我在写PS脚本,它将与基于C#的Windows窗体应用程序集成。这就是我试图/已完成:通过C#管道运行PowerShell
我可以通过运行空间和管道运行PS脚本,但是我遇到当我试图运行使用功能的脚本错误,他说:“由于当前主机没有执行此功能,因此无法调用此功能。”
我已经研究过这个问题,并且我发现很少有人遇到类似的问题,但是其中一个解决方案强调我需要使用(添加)下面的$ ConfirmPreference =“None”,-Confirm :$假,-Force
然而,当我尝试了以下错误消息出现:“失踪表达元运算符后‘ - ’。”你可以看到,我试图在连接字符串由他们分配给变量,但这并没有帮助。我不知道如何解决它,有没有人有任何想法?任何帮助都感激不尽。
// create Powershell runspace Runspace runspace = RunspaceFactory.CreateRunspace(); // open it runspace.Open(); // create a pipeline and feed it the script text Pipeline pipeline = runspace.CreatePipeline(); //allow the functions to be exec string sa = "$ConfirmPreference = \"None\" "; string se = " -Confirm:$false -Force"; string s = sa +scriptText + se; pipeline.Commands.AddScript(s);
什么是scriptText? – MrKWatkins