我试图通过visual studio命令提示符构建解决方案。我正在使用VS 2012.我已经编写了一个脚本,我通过VS命令提示符使用它。脚本内容是:
set BUILD_STATUS=%ERRORLEVEL%
msbuild C:\MyProj.vcxproj /p:Configuration=Debug /p:platform=x64 /verbosity:minimal
@if %BUILD_STATUS%==1 goto fail
:fail
exit /B 1
如果解决方案已经编译并且是最新的,则返回错误并终止执行。执行转移到:直接失败阻止而不执行更多行。只有当解决方案是最新的时才会发生这种情况,但过时的解决方案可以正常工作。
我也尝试了否定:
@if not %BUILD_STATUS%==0 goto fail
请帮忙。
答案 0 :(得分:2)
ERRORLEVEL不是环境变量,因为您正在尝试捕获它。将您的批次重写为:
msbuild C:\MyProj.vcxproj /p:Configuration=Debug /p:platform=x64 /verbosity:minimal
@if ERRORLEVEL 1 goto fail
rem If no error, success
goto success
:fail
exit /B 1
:success
exit /B 0