Система.Управление.Автоматизация.PowerShell — Сбой модуля импорта

#c# #powershell #automation #powershell-core

Вопрос:

Я пытаюсь вызвать существующий сценарий powershell с помощью System.Management.Автоматизация.Пакет PowerShell, как показано ниже.

 using (System.Management.Automation.PowerShell ps =   System.Management.Automation.PowerShell.Create())  {    ps.AddCommand("customscript.ps1")  .AddParameter("param1", "value1");    try   {  var result = ps.Invoke();  CommonOutput.ErrorOutput("pass");   }  catch (Exception ex)   {  Console.WriteLine(ex.Message);  CommonOutput.ErrorOutput("wrong");   }   }   

Сценарий powershell импортирует другой модуль powershell и использует инструкции, как показано ниже, импорт выдает ошибку, указывающую, что путь к модулю не найден.

 import (moduleName)  

Если я изменю оператор импорта в PSScript, добавив UseWindowsPowerShell переключатель, как показано ниже, он будет работать нормально.

 import (moduleName) -UseWindowsPowerShell  

Как мы можем обработать этот переключатель во время выполнения перед вызовом ps.invoke()