启动过程不适用于VSIXInstaller.exe

时间:2012-07-16 21:33:16

标签: powershell powershell-v2.0 vsix

我正在尝试运行该进程并等待它关闭。 当我像下面那样运行VSIXInstaller时,它可以工作:

$pathToTheExtension = $path + "VS2012.Ext.vsix"
VSIXInstaller.exe $pathToTheExtension

但是当我通过Start-Process VSIXInstaller运行它时,不会将$ pathToTheExtension作为参数。

$pathToTheExtension = $path + "VS2012.Ext.vsix"
$result = $(Start-Process -filePath "VSIXInstaller.exe" -argumentList $pathToTheExtension -Wait)

如何通过Start-Process将路径传递给vsix文件?

以下是运行Start-Process的结果。

enter image description here

修改

我从Process explorer检查正在运行的VSIXInstaller进程的命令行参数,这对我来说似乎是正确的。

"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\VSIXInstaller.exe" "C:\VS2012.Ext.vsix"

1 个答案:

答案 0 :(得分:4)

您需要用引号括起参数值。

$pathToTheExtension = '"{0}VS2012.Ext.vsix"' -f $path;
$result = Start-Process -FilePath "VSIXInstaller.exe" -ArgumentList $pathToTheExtension -Wait -PassThru;