1

我为 Microsoft System Center Virtual Machine Manager 制作了一个插件,它通过插件的 c# 代码调用的 powershell 脚本在主机上执行 powershell 脚本。(贝壳:P)

由于我总是遇到错误,我决定在 SCVMM 中手动测试它,方法是右键单击主机并输入powershell.exeorpowershell以获取可执行文件和export-v -name [name] -path [path] -force - copystate -wait. 现在它告诉我没有这样的文件。奇怪的是,它适用于cmd( .exe) 和echo test。不应该在 Windows Server 2012 上安装 powershell 吗?此外,如果我远程控制主机,它在控制台中也可以正常工作。我错过了什么?

4

1 回答 1

1

我发现在使用 powershell.exe 作为可执行文件时需要提供完整路径。问题是并非所有主机都具有包含 powershell.exe 可执行文件路径的系统变量 PATH。

您可以通过提供完整路径来运行 powershell.exe:%WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe

或者您可以将 cmd.exe 作为可执行文件运行,然后从此 cmd 运行 powershell.exe:

可执行文件:cmd.exe 参数:/c powershell.exe echo 1;返回0;

于 2015-04-16T05:02:44.550 回答