_set_error_mode
Ändert das __error_mode, um einen nicht standardmäßigen Speicherort zu bestimmen, in dem die C-Laufzeit schreibt eine Fehlermeldung für einen Fehler, der möglicherweise beendet das Programm.
Wichtig
Diese API kann nicht in Anwendungen verwendet werden, die im Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.
int _set_error_mode(
int modeval
);
Parameter
- modeval
Ziel der Fehlermeldungen.
Rückgabewert
Gibt der alte Einstellung oder das -1 zurück, wenn ein Fehler auftritt.
Hinweise
Steuert die Fehlerausgabesenke durch Festlegen des Werts von __error_mode. Beispielsweise können Sie Direktausgabe in einen Standardfehler oder die MessageBox - API verwenden.
Der modeval-Parameter kann auf einen der folgenden Werte festgelegt werden.
Parameter |
Beschreibung |
---|---|
_OUT_TO_DEFAULT |
Fehlersenke wird durch __app_type festgelegt. |
_OUT_TO_STDERR |
Fehlersenke ist ein Standardfehler. |
_OUT_TO_MSGBOX |
Fehlersenke ist ein Meldungsfeld. |
_REPORT_ERRMODE |
Berichten Sie den aktuellen __error_mode-Wert. |
Wenn ein anderer Wert als hier aufgelistet sind übergeben wird, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben. Wenn die Ausführung zulässig ist, um fortzufahren, legt _set_error_modeerrno auf EINVAL fest und gibt -1 zurück.
In Kombination mit Assertion hat, zeigt _set_error_mode die fehlgeschlagenen Anweisung im Dialogfeld an und bietet die Optionen der Auswahl Ignore der Schaltfläche, damit Sie fortfahren können, um das Programm auszuführen.
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_set_error_mode |
<stdlib.h> |
Beispiel
// crt_set_error_mode.c
// compile with: /c
#include <stdlib.h>
#include <assert.h>
int main()
{
_set_error_mode(_OUT_TO_STDERR);
assert(2+2==5);
}