2

私はnmakeベースのプロジェクトを持っています.aspコンパイラは、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%  

nmake タスクを制御すると、最終的にゼロ以外の ERRORLEVEL (2 に設定されている) が返されるので、エラーを問題なくキャッチできると想定していますが、nmake はゼロ以外の値をバブルしていません。そのタスクからコードを終了します。または、少なくとも、私はそれを誤ってトラップしています。どんな助けでも大歓迎です。

4

2 に答える 2

1

まず、エラーをトラップする方法を確認できるように、バッチ ファイルを投稿してください。
また、この投稿にコメントして、もう一度読むことができます。
最初のgitとして、私は次のようなものを推測します:

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

構築中に、すべての状況を増分ログにトラップするための開始です。

于 2009-08-25T12:20:06.873 に答える
0

バッチスクリプトで使用する必要がexit /b %errorlevel%あります。これにより、リターンコードがnmakeに返されます

于 2009-11-19T19:38:31.580 に答える