Udostępnij za pośrednictwem


Wartość zwracania cl.exe

Program cl.exe zwraca 0 w przypadku sukcesu (bez błędów) i wartość różną od zera w przeciwnym razie.

Wartość zwracana przez cl.exe może być przydatna, jeśli kompilujesz z pliku skryptu, powershell, .cmd lub .bat.Zaleca się przechwycenie danych wyjściowych kompilatora w przypadku błędów lub ostrzeżeń, tak aby można je było rozwiązać.

Istnieje zbyt wiele możliwych kodów wyjścia błędów dla cl.exe, aby je wszystkie wymienić.Możesz wyszukać kod błędu w plikach winerror.h lub ntstatus.h, zawartych w Windows Software Development Kit w %ProgramFiles(x 86)%\Windows Kits\version\Include\shared\directory.Kody błędów zwracane w zapisie dziesiętnym muszą zostać przekonwertowane na format szesnastkowy, aby możne je było wyszukać.Na przykład, kod błędu -1073741620 przekonwertowany na liczbę szesnastkową to 0xC00000CC.Ten błąd znajduje się w ntstatus.h, gdzie jest odpowiedni komunikat „Nie można odnaleźć określonej nazwy udziału na zdalnym serwerze”. Aby pobrać listę kodów błędów systemu Windows, zobacz [MS-ERREF]: Windows Error Codes.

Możesz też użyć narzędzia wyszukiwania błędów w Visual Studio, aby się dowiedzieć, co oznacza komunikat o błędzie kompilatora.W powłoce poleceń Visual Studio wpisz errlook.exe, aby uruchomić narzędzie, lub w Visual Studio IDE na pasku menu wybierz Narzędzia, Wyszukiwanie błędów.Wprowadź wartość błędu, aby znaleźć opisowy tekst skojarzony z błędem.Aby uzyskać więcej informacji, zobacz Odwołanie ERRLOOK.

Uwagi

Oto przykładowy plik .bat, używający wartości zwracanej przez 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

Zobacz też

Informacje

Składnia wiersza polecenia kompilatora