PowerShell Beginnvoke - PsInvocationSettings не работаетC#

Место общения программистов C#
Ответить
Anonymous
 PowerShell Beginnvoke - PsInvocationSettings не работает

Сообщение Anonymous »

У меня есть следующий код C# для вызова PowerShell с использованием BeginInVoke. У меня есть следующие требования:
- eventhandlers для «живой» потоковой передачи выходных, словесных и ошибок
- Мне нужно иметь возможность вводить ошибку errorActionPreference < /code> при выполнении скрипта < /p>

Мой код выглядит следующим образом (

Код: Выделить всё

powershellScriptSettings.StopOnErrors
всегда bool true ):

powershellSettings.ErrorActionPreference = powershellScriptSettings.StopOnErrors ? ActionPreference.Stop : ActionPreference.Continue;

IAsyncResult async = powerShellInstance.BeginInvoke(null, output, powershellSettings, null, null);

//wait for it to complete
try
{
powerShellInstance.EndInvoke(async);
}
< /code>

Просмотр потока вывода, я вижу, что этот код выполняет обе команды write-error и что значение $ errorActionPreference по умолчанию (по умолчанию (Continue< /code>): < /p>

$ErrorActionPreference
Write-error 'err1'
Write-Error 'err2'
< /code>

Таким образом, совершенно очевидно, что мои PowerShellSettings < /code> не оказывают эффекта. Я знаю, что могу просто добавить строку $ errorActionPreference = stop < /code> в начало моего сценария ввода, но я хочу сделать это «c#» и использовать доступную функциональность в API PowerShell. сценарий в любом случае завершить. < /p>

Любые указатели оценены! < /p>

Подробнее здесь: https://stackoverflow.com/questions/436 ... ot-working
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»