cl.exe の戻り値Return Value of cl.exe

cl.exe では、動作が正常終了した場合 (エラーがない場合) は 0 を返し、それ以外の場合は 0 以外の値を返します。cl.exe returns zero for success (no errors) and non-zero otherwise.

スクリプト、PowerShell、.cmd、または .bat ファイルからコンパイルを行う場合は、cl.exe の戻り値が役に立ちます。The return value of cl.exe can be useful if you are compiling from a script, powershell, .cmd, or .bat file. エラーまたは警告が発生した場合にそれらを解決できるように、コンパイラの出力をキャプチャすることをお勧めします。We recommend that you capture the output of the compiler in case there are errors or warnings, so that you can resolve them.

cl.exe のエラー終了コードは多すぎて、すべてを表示することはできません。There are too many possible error exit codes for cl.exe to list them all. Winerror.h で、エラー コードを調べることができます、キットの %programfiles (x86) %\Windows % では、Windows Software Development Kit に含まれる ntstatus.h ファイルまたは\バージョン\Include\shared\ ディレクトリにします。You can look up an error code in the winerror.h or ntstatus.h files included in the Windows Software Development Kit in the %ProgramFiles(x86)%\Windows Kits\version\Include\shared\ directory. 10 進数で返されるエラー コードは、16 進数に変換して検索する必要があります。Error codes returned in decimal must be converted to hexadecimal for search. たとえば、16 進数に変換された -1073741620 エラー コードは 0xC00000CC です。For example, an error code of -1073741620 converted to hexadecimal is 0xC00000CC. このエラーは ntstatus.h にあり、対応するメッセージは "指定した共有名がリモート サーバーで見つかりません" です。This error is found in ntstatus.h, where the corresponding message is "The specified share name cannot be found on the remote server." Windows エラー コードのダウンロード可能な一覧は、次を参照してください [MS ERREF]:。Windows エラー コードします。For a downloadable list of Windows error codes, see [MS-ERREF]: Windows Error Codes.

Visual Studio でエラー ルックアップ ユーティリティを使用して、コンパイラ エラー メッセージの意味を検索することもできます。You can also use the error lookup utility in Visual Studio to find out what a compiler error message means. Visual Studio コマンド シェルで次のように入力します。 errlook.exeユーティリティを起動します。 または、メニュー バーで、Visual Studio IDE で選択するツールエラー ルックアップします。In a Visual Studio command shell, enter errlook.exe to start the utility; or in the Visual Studio IDE, on the menu bar, choose Tools, Error Lookup. エラー値を入力して、そのエラーに関連付けられている説明のテキストを見つけます。Enter the error value to find the descriptive text associated with the error. 詳細については、次を参照してください。 ERRLOOK リファレンスします。For more information see ERRLOOK Reference.

RemarksRemarks

次に、cl.exe の戻り値を使用するサンプル .bat ファイルを示します。The following is a sample .bat file that uses the return value of cl.exe.

echo off
cl /W4 t.cpp
@if ERRORLEVEL == 0 (
   goto good
)

@if ERRORLEVEL != 0 (
   goto bad
)

:good
   echo "clean compile"
   echo %ERRORLEVEL%
   goto end

:bad
   echo "error or warning"
   echo %ERRORLEVEL%
   goto end

:end

関連項目See also

MSVC コンパイラ コマンド ラインの構文MSVC Compiler Command-Line Syntax