Как поймать код выхода из скрипта powershell в c# - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть скрипт powershell, который запускается c#. Ниже мой код:

string data = System.IO.File.ReadAllText(@"C:\Users\user1\Desktop\power.ps1");
using (PowerShell PowerShellInstance = PowerShell.Create())
{
    PowerShellInstance.AddScript(data);
    IAsyncResult result = PowerShellInstance.BeginInvoke();
    while (!result.IsCompleted)
    {
        Logger.Info("Wait initiated");
        Thread.Sleep(5000);
    }
}

Как я могу прочитать код завершения после завершения сценария?

1 Ответ

0 голосов
/ 29 апреля 2020

Отсюда Выполнение сценариев PowerShell из C#

// begin invoke execution on the pipeline
// use this overload to specify an output stream buffer
IAsyncResult result = PowerShellInstance.BeginInvoke<PSObject, PSObject>(null, outputCollection);

...

foreach (PSObject outputItem in outputCollection)
{
    //TODO: handle/process the output items if required
    Console.WriteLine(outputItem.BaseObject.ToString());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...