2008-11-25 53 views
2

我有一個基於NMAKE項目依次調用ASP的編譯器,它可以拋出一個錯誤,它執行nmake似乎認識到:處理NMAKE錯誤級別/返回代碼

NMAKE : fatal error U1077: 'C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler.exe' : return code '0x1' 

然而,當我打電話NMAKE從在批處理文件中,環境變量%ERRORLEVEL%仍保持設定爲零:

nmake /NOLOGO 
echo BUILD RETURNING: %ERRORLEVEL% 

如果我控制-C的NMAKE任務,我最終得到一個非零的ERRORLEVEL(它被設置爲2),所以我假設是我能夠發現錯誤,但是nmake並沒有從它的任務中冒出非零的退出代碼。或者,至少,我會誤入歧途。任何幫助,將不勝感激。

回答

1

首先,請發佈您的批處理文件,以便我們看到如何捕獲錯誤。
也評論這篇文章,所以我可以再讀一遍。
作爲第一個混帳,我猜是這樣的:

nmakebatch.cmd通常NMAKE參數,而不/ NOLOGO

@echo off 
rem Args[x]: nmake arguments 
echo.>> %~n0.log 
echo %date% %time%>> %~n0.log 
echo nmake /NOLOGO %*>> %~n0.log 
nmake /NOLOGO %* 
echo %errorlevel%>> %~n0.log 

是對捕捉所有情況下開始,成遞增日誌,而建設。

0

您應該在批處理腳本中使用exit /b %errorlevel%這會將返回碼傳遞迴nmake