@ASiD

Как в C# получить данные из PowerShell?

Здравствуйте. Пишу приложение на C#.
Есть задача получить данные о компьютерах из домена и вывести их в DataGrid. Для получения данных использую PowerShell. Скрипт запускаю с помощью модуля system.management.automation.
Функция обращения к PS выглядит так:
private string RunPSScript(string script)
        {
            Runspace runspace = RunspaceFactory.CreateRunspace();
            runspace.Open();
            Pipeline pipeline = runspace.CreatePipeline();
            pipeline.Commands.AddScript(script);
            pipeline.Commands.Add("Out-String");
            Collection<PSObject> results = pipeline.Invoke();
            runspace.Close();
            StringBuilder stringBuilder = new StringBuilder();
            foreach (PSObject pSObject in results)
                stringBuilder.AppendLine(pSObject.ToString());
            return stringBuilder.ToString();
        }

Данные получаются, но в виде текста. Мне же нужно разбить их по столбцам, чтобы обработать их и добавить в DataGrid. Подскажите, как можно это реализовать?
  • Вопрос задан
  • 509 просмотров
Пригласить эксперта
Ответы на вопрос 1
@MaxKozlov Куратор тега PowerShell
ну, прежде всего, я бы воспользовался System.DirectoryServices, а не Powershell...

Но если уж так очень хочется, то у PSObject есть свойство Properties...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы