批处理文件发出意外错误

时间:2014-07-16 09:50:25

标签: windows batch-file scripting cmd

连续执行bat文件5到6次后我收到了以下错误 - "输入行太长,命令的语法不正确"

@call "c:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86_amd64;

@call "c:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\vcvars32.bat" x86_amd64;

@set INCLUDE=%INCLUDE%;"C:\Program Files\Microsoft SDKs\Windows\v7.0\Include";

@set BIT64=-DSOLARIS_64bit

@set DDK5_ROOT=c:\WinDDK\7600.16385.1

@set DDK_ROOT=c:\WinDDK\7600.16385.1

@set DDKDRIVE=C:

@set VERSION=/DBUILD_MAJOR_VERSION="4" /DBUILD_MINOR_VERSION="2" /DBUILD_REVISION="1.3"

@set ENCRYPT=__SSL_SUPPORT__

@set RES_BUILD_DEBUG=1

@set Platform=platform-win32.4.00

1 个答案:

答案 0 :(得分:0)

不知道或指出vcvarsall.batvcvars32.bat做了什么。

@set INCLUDE=%INCLUDE%;"C:\Program Files\Microsoft SDKs\Windows\v7.0\Include";
如果您在循环中执行此过程,

每次都会扩展include。这个可能是问题,但它应该花费5 or 6次。

使用@echo off开始此过程意味着您可以删除每行开头的@

您可以通过在战略要点(例如,pause的设置之前和之后)插入include语句来找到错误发生的位置,并且您可以观察将由使用(例如,在包含行上)

@echo on
set INCLUDE=%INCLUDE%;"C:\Program Files\Microsoft SDKs\Windows\v7.0\Include";
@echo off
pause