在启动visual studio之前等待vsix完成安装

时间:2014-08-11 08:55:27

标签: c# visual-studio batch-file command-line visual-studio-extensions

我正在使用visual studio命令行以静默方式安装一些vsix扩展

call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat"

VSIXInstaller.exe /q ABC.vsix

"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe"

我的问题是在vsix完成安装之前启动了Visual Studio。

有没有办法告诉Visual Studio在启动之前等待。

我不想使用计时器,因为我不知道要安装的vsix的数量。

EDIT基于 Alastair Campbell 回复

call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat"

start /wait VSIXInstaller.exe /q ABC.vsix

start "" "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe"

我在最后一行添加了启动而没有/ wait,否则命令行将不会关闭,它将等待visual studio关闭然后自行关闭。

1 个答案:

答案 0 :(得分:3)

使用START命令可以实现这一点。

START /WAIT VSIXInstaller.exe /q "C:\Developpement\ABC.vsix"

使用help参数调用START命令,这是输出中的一行:

WAIT        Start application and wait for it to terminate.

以下是我用来测试的批处理脚本:

@ECHO OFF
call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\VsDevCmd.bat"
ECHO Loaded VS Command Line...
START /WAIT VSIXInstaller.exe /q VsVim.vsix
START /WAIT VSIXInstaller.exe /q AxTools.VS10X.CodeMap.vsix
START /WAIT VSIXInstaller.exe /q CodeMaid_v0.7.3.vsix
START /WAIT VSIXInstaller.exe /q ProPowerTools.vsix
ECHO DONE
START "" "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe"
PAUSE