如何为不同的架构构建 Visual Studio 个项目

How to Build Visual Studio Projects for Different Architectures

我正在编写一个批处理脚本,它将构建使用 Visual Studio 2010 制作的项目。我需要它来构建同一项目的四个变体:32 位调试、32 位发布、64-位调试和 64 位发布。

到目前为止,我想我已经弄清楚如何使用上次保存的设置构建项目:

"%MSBUILD_DIR%\MSBuild.exe" !PROJECTNAME!.vcxproj /t:Build^

我该如何修改它,以便它构建我需要的四种不同配置?

@echo off
setlocal

set _project=project.vcxproj

call :do_build "%_project%" Release Win32
call :do_build "%_project%" Debug   Win32
call :do_build "%_project%" Release x64
call :do_build "%_project%" Debug   x64

endlocal
exit /b 0

:do_build
setlocal
set _proj=%~1
set _conf=%~2
set _arch=%~3
set _code=0
if "%_arch%"=="Win32" (set _vc_arg=x86) else (set _vc_arg=amd64)
call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" %_vc_arg%
msbuild /t:build /p:Configuration="%_conf%" /p:Platform=%_arch% %_proj% || set "_code=1"
endlocal & exit /b %_code%