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

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

 Setting environment for using Microsoft Visual Studio 2008 x86 tools. 

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

 @echo off "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat" vcbuild 

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

 @echo off call "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat" vcbuild 

您还需要检查脚本是否已经运行,否则,如果您在同一个控制台中反复调用脚本,则会导致内存不足。

 IF '%VSINSTALLDIR%' NOT EQU '' THEN EXIT 0 

确切的程序文件路径取决于您是否拥有32位或64位操作系统以及安装Visual Studio的位置。 使用Visual Studio在安装时设置的VS100COMNTOOLS环境变量一般来解决这个问题。

 call "%VS100COMNTOOLS%\..\..\VC\bin\vcvars32.bat" ... 

请注意,Visual Studio的每个版本都有一个基于其基础版本号的特定环境变量。

 Visual Studio 2005 VS80COMNTOOLS Visual Studio 2008 VS90COMNTOOLS Visual Studio 2010 VS100COMNTOOLS Visual Studio 2012 VS110COMNTOOLS Visual Studio 2013 VS120COMNTOOLS 

你明白了。