如何编写运行vcvars32.bat的构建批处理脚本,然后继续构建?

Jar*_*aus 17 windows vcbuild visual-studio

我想编写一个简单的批处理脚本来加载Visual Studio构建环境vcvars32.bat,然后继续使用构建vcbuild.但是,我的脚本将不会执行调用vcvars32.bat.我得到的最后一个输出是:

Setting environment for using Microsoft Visual Studio 2008 x86 tools.
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我正在使用Visual Studio 2008.这是我最简单的批处理脚本:

@echo off
"C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
vcbuild
Run Code Online (Sandbox Code Playgroud)

Jar*_*aus 29

您必须call在批处理脚本中使用,否则终止vcvars32.bat将终止您自己的批处理脚本.因此你的脚本应该是:

@echo off
call "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
vcbuild
Run Code Online (Sandbox Code Playgroud)

  • 即使没有vcvars32.bat中的exit语句,也会发生这种情况.在没有"调用"的情况下调用批处理文件会运行批处理文件,并在到达第二个批处理文件的末尾时退出.(另请参阅Raymond Chen最近关于此主题的博客文章:http://blogs.msdn.com/oldnewthing/archive/2009/04/16/9551818.aspx) (6认同)