Visual Studio预构建事件:批处理文件退出代码为-1

时间:2012-07-17 01:32:28

标签: visual-studio-2010 command-line batch-file exit-code

为了解决问题IIS Express Blocks VS 2010SP1 Builds,我创建了一个简单的批处理文件

taskkill /IM iisexpress.exe
exit 0

并将该批处理文件设置为预构建事件。

如果IIS Express实际运行,则效果很好。但是,如果IIS Express 正在运行,则构建将失败,并显示以下输出:

  

找不到“iisexpress.exe”进程。
  命令“E:\ Software \ Util \ KillIisExpress.bat”退出,代码为-1。

如果我使用taskkill命令作为预构建事件而不是批处理文件,则错误更改为

  

命令“taskkill / IM iisexpress.exe”退出,代码为128。

如何修改批处理文件,以便无论退回代码taskkill返回什么,批处理文件返回的退出代码为0,以便VS构建成功?

1 个答案:

答案 0 :(得分:2)

您可以使用

taskkill /FI "IMAGENAME eq iisexpress.exe"
如果iisexpress.exe没有运行,

会输出一条信息消息,但会返回0.你不需要带有这个的批处理文件,只需添加命令作为预构建事件命令行。