Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menentukan tujuan atau tujuan untuk jenis laporan tertentu yang dihasilkan oleh _CrtDbgReport dan makro apa pun yang memanggil_CrtDbgReport , , _CrtDbgReportWseperti _ASSERT, , _ASSERT_EXPR _ASSERTEmakro dan _RPTF_RPT, _RPTW, makro _RPTFW (hanya versi debug).
Sintaks
int _CrtSetReportMode(
int reportType,
int reportMode
);
Parameter
reportType
Jenis laporan: _CRT_WARN, _CRT_ERROR, dan _CRT_ASSERT.
reportMode
Mode atau mode laporan baru untuk reportType.
Nilai hasil
Setelah berhasil diselesaikan, _CrtSetReportMode mengembalikan mode laporan atau mode sebelumnya untuk jenis laporan yang ditentukan dalam reportType. Jika nilai yang tidak valid diteruskan sebagai reportType atau mode yang tidak valid ditentukan untuk reportMode, _CrtSetReportMode memanggil handler parameter yang tidak valid seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi ini diatur errno ke EINVAL dan mengembalikan -1. Untuk informasi selengkapnya, lihat errno, _doserrno, _sys_errlist, dan _sys_nerr.
Keterangan
_CrtSetReportMode menentukan tujuan output untuk _CrtDbgReport. Karena makro _ASSERT, , _ASSERTE, _RPTdan _RPTF panggilan _CrtDbgReport, _CrtSetReportMode menentukan tujuan output teks yang ditentukan dengan makro tersebut.
Jika _DEBUG tidak ditentukan, panggilan ke _CrtSetReportMode akan dihapus selama praproscesing.
Jika Anda tidak memanggil _CrtSetReportMode untuk menentukan tujuan output pesan, default berikut berlaku:
Kegagalan dan kesalahan pernyataan diarahkan ke jendela pesan debug.
Peringatan dari aplikasi Windows dikirim ke jendela output debugger.
Peringatan dari aplikasi konsol tidak ditampilkan.
Tabel berikut mencantumkan jenis laporan yang ditentukan dalam Crtdbg.h.
| Jenis laporan | Deskripsi |
|---|---|
_CRT_WARN |
Peringatan, pesan, dan informasi yang tidak memerlukan perhatian segera. |
_CRT_ERROR |
Kesalahan, masalah yang tidak dapat dipulihkan, dan masalah yang memerlukan perhatian segera. |
_CRT_ASSERT |
Kegagalan pernyataan (ekspresi tegas yang mengevaluasi ke FALSE). |
Fungsi menetapkan _CrtSetReportMode mode laporan baru yang ditentukan dalam reportMode jenis laporan yang ditentukan dan reportType mengembalikan mode laporan yang ditentukan sebelumnya untuk reportType. Tabel berikut mencantumkan pilihan yang tersedia untuk reportMode dan perilaku yang dihasilkan dari _CrtDbgReport. Opsi ini didefinisikan sebagai bendera bit di Crtdbg.h.
| Mode laporan | perilaku _CrtDbgReport |
|---|---|
_CRTDBG_MODE_DEBUG |
Menulis pesan ke jendela output debugger. |
_CRTDBG_MODE_FILE |
Menulis pesan ke handel file yang disediakan pengguna. _CrtSetReportFile harus dipanggil untuk menentukan file atau aliran tertentu untuk digunakan sebagai tujuan. |
_CRTDBG_MODE_WNDW |
Membuat kotak pesan untuk menampilkan pesan bersama dengan tombol Batalkan, Coba Lagi, dan Abaikan . |
_CRTDBG_REPORT_MODE |
Mengembalikan reportMode untuk yang ditentukan reportType:1 _CRTDBG_MODE_FILE2 _CRTDBG_MODE_DEBUG4 _CRTDBG_MODE_WNDW |
Setiap jenis laporan dapat dilaporkan menggunakan satu, dua, atau tiga mode atau tanpa mode sama sekali. Oleh karena itu, dimungkinkan untuk memiliki lebih dari satu tujuan yang ditentukan untuk satu jenis laporan. Misalnya, fragmen kode berikut menyebabkan kegagalan pernyataan dikirim ke jendela pesan debug dan ke stderr:
_CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE | _CRTDBG_MODE_WNDW );
_CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDERR );
Selain itu, Anda dapat mengontrol mode atau mode pelaporan untuk setiap jenis laporan secara terpisah. Misalnya, dimungkinkan untuk menentukan bahwa reportType dari _CRT_WARN masuk ke string debug output, sementara _CRT_ASSERT ditampilkan menggunakan jendela pesan debug dan dikirim ke stderr, seperti yang diilustrasikan sebelumnya.
Persyaratan
| Rutin | Header yang diperlukan | Header opsional |
|---|---|---|
_CrtSetReportMode |
<crtdbg.h> |
<errno.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Pustaka: Debug versi pustaka runtime C saja.