Freigeben über


_CrtSetReportMode

Gibt das Ziel oder die Ziele für einen bestimmten Bericht den Typ an, der von _CrtDbgReport und alle Makros, die generiert wird _CrtDbgReport, _CrtDbgReportW, wie _ASSERT, _ASSERTE Makros, _ASSERT, _ASSERTE Makros, _RPT, _RPTF, _RPTW, _RPTFW Makrosund _RPT, _RPTF, _RPTW, _RPTFW Makros (nur Debugversion) aufrufen.

int _CrtSetReportMode( 
   int reportType,
   int reportMode 
);

Parameter

  • reportType
    Meldet den Typ: _CRT_WARN, _CRT_ERRORund _CRT_ASSERT.

  • reportMode
    Neuer Bericht oder den Modus für reportType- Modi.

Rückgabewert

Bei erfolgreichem Abschluss gibt den vorherigen Berichts _CrtSetReportMode Modus oder den Modi für den Typ des Berichts zurück, der in reportTypeangegeben wird.Wenn ein ungültiger Wert übergeben wird, während reportType oder ein ungültiger Modus für reportModeangegeben wird, erhält _CrtSetReportMode ungültige Parameter für ein, wie in Parametervalidierungbeschrieben.Wenn die Ausführung ermöglicht wird, um fortzufahren, gibt diese Funktion errno legt diesen fest EINVAL und -1 zurück.Weitere Informationen finden Sie unter errno, _doserrno, _sys_errlist und _sys_nerr.

Hinweise

_CrtSetReportMode gibt _CrtDbgReportZiel für die Ausgabe an.Da die Makros _ASSERT, _ASSERTE, _RPTund _RPTF Aufruf _CrtDbgReport, _CrtSetReportMode die Ausgabe Ziel des Texts angegeben mit diesen Makros angibt.

Wenn _DEBUG nicht definiert wird, werden Aufrufe _CrtSetReportMode während des Präprozessorlaufs entfernt.

Wenn Sie nicht _CrtSetReportMode aufrufen, um das Ziel Ausgabe von Nachrichten zu definieren, sind die folgenden Standardwerte übernommen:

  • Assertionsfehler und Fehler werden für eine Debug- Meldungsfenster verwiesen.

  • Warnungen von Windows-Anwendungen werden im Ausgabefenster des Debuggers gesendet.

  • Warnungen von Konsolenanwendungen werden nicht angezeigt.

In der folgenden Tabelle werden die Typen von Berichts aufgelistet, die in Crtdbg.h definiert sind.

Typ des Berichts

Beschreibung

_CRT_WARN

Warnungen, Meldungen und Informationen, die nicht unmittelbar Aufmerksamkeit erfordert.

_CRT_ERROR

Nicht behebbarer Fehler, Probleme und Problemen, die unmittelbare Aufmerksamkeit erfordern.

_CRT_ASSERT

Assertionsfehler (bestätigte Ausdrücke, die zu FALSEergeben).

Die _CrtSetReportMode-Funktion weist den neuen Berichts an, der in reportMode Modus den Typ des Berichts angegeben wird, der in reportType angegeben wird, und gibt den zuvor definierten Berichts Modus für reportTypezurück.In der folgenden Tabelle werden die verfügbaren Optionen für reportMode und das resultierende Verhalten von _CrtDbgReportauf.Diese Optionen werden als Bitflags in Crtdbg.h definiert.

Der Modus Berichts

_CrtDbgReport Verhalten

_CRTDBG_MODE_DEBUG

Schreibt die Meldung im Ausgabefenster des Debuggers.

_CRTDBG_MODE_FILE

Schreibt die Nachricht an einem vom Benutzer angegebenen Dateihandle._CrtSetReportFile muss aufgerufen werden, um die spezifische Datei oder einem Stream zu definieren, um als Ziel verwendet werden soll.

_CRTDBG_MODE_WNDW

Stellt ein Meldungsfeld erstellt, um die Nachricht Abort, und Retryzusammen mit Ignore Schaltflächen anzuzeigen.

_CRTDBG_REPORT_MODE

Gibt reportMode für die angegebene reportTypezurück:

1   _CRTDBG_MODE_FILE

2   _CRTDBG_MODE_DEBUG

4   _CRTDBG_MODE_WNDW

Jeder Typ kann mithilfe einer Berichtsansicht, zwei oder drei Modi oder ohne Modus) gemeldet werden.Daher ist es möglich, mehrere Ziele verfügen, die für einen einzelnen Bericht definierten Typ.Beispielsweise verursacht der folgende Codefragment Assertionsfehler in einem Meldungsfenster Debuggen und stderrbereitgestellt wird:

_CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE | _CRTDBG_MODE_WNDW );
_CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDERR );

Darüber hinaus können der Berichten oder Modi für jeden Modus des Berichts einzeln gesteuert werden.Zum Beispiel anzugeben ist möglich, dass reportType von _CRT_WARN Debuggen einer Zeichenfolge der Ausgabe _CRT_ASSERT beim Debuggen mit einem Nachrichtenfensters angezeigt wird und stderrgesendet, wie bereits erläutert wurde gesendet wird.

Anforderungen

Routine

Erforderlicher Header

Optionaler Header

_CrtSetReportMode

<crtdbg.h>

<errno.h>

Weitere Informationen finden Sie unter Kompatibilität Kompatibilität in der Einführung.

Bibliotheken: Debugversionen von nur CRT-Bibliotheks-Funktionen .

Beispiel

Weitere Informationen finden Sie unter report.

.NET Framework-Entsprechung

Nicht zutreffend. Um die Standard-C-Funktion aufrufen, verwenden Sie PInvoke. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

Siehe auch

Referenz

Debug- Routinen