我正在编写一个简短的 c# 程序,它执行一个 powershell 脚本 test.ps1。代码如下:
Runspace runspace = RunspaceFactory.CreateRunspace();
runspace.Open();
Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.AddScript(scriptText);
pipeline.Commands.Add("Out-String");
Collection<psobject> results = pipeline.Invoke();
runspace.Close();
test.ps1 中有一个 psexec,但是当我运行 c# 程序时,我得到:“psexec 无法识别为 cmdlet ...”,但是当我在 powershell 中启动我的脚本时它可以工作。运行空间有问题吗?(我也试过 psexec.exe 和 c:\windows\system32\psexec.exe)