Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
tarafından _CrtDbgReport oluşturulan belirli bir rapor türü için hedefi veya hedefleri ve ,_CrtDbgReportW , , makroları ve _RPTF_RPTW_RPT, , _ASSERT_EXPR , _RPTFW makroları gibi _ASSERT_ASSERTEçağıran _CrtDbgReporttüm makroları belirtir (yalnızca hata ayıklama sürümü).
Sözdizimi
int _CrtSetReportMode(
int reportType,
int reportMode
);
Parametreler
reportType
Rapor türü: _CRT_WARN, _CRT_ERRORve _CRT_ASSERT.
reportMode
için reportTypeyeni rapor modu veya modları.
Dönüş değeri
Başarıyla tamamlandığında, _CrtSetReportMode içinde reportTypebelirtilen rapor türü için önceki rapor modunu veya modlarını döndürür. olarak reportType geçersiz bir değer geçirilirse veya için reportModegeçersiz bir mod belirtilirse, _CrtSetReportMode Parametre doğrulamasında açıklandığı gibi geçersiz parametre işleyicisini çağırır. Yürütmenin devam etmesi için izin verilirse, bu işlev olarak EINVAL ayarlanır errno ve -1 döndürür. Daha fazla bilgi için bkz. errno, _doserrno, _sys_errlistve _sys_nerr.
Açıklamalar
_CrtSetReportMode için _CrtDbgReportçıkış hedefini belirtir. , , _ASSERTE_RPTve _RPTF çağrısı _CrtDbgReport_CrtSetReportMode makroları_ASSERT, bu makrolarla belirtilen metnin çıkış hedefini belirtir.
Tanımlanmadığında _DEBUG , çağrısı _CrtSetReportMode ön işleme sırasında kaldırılır.
İletilerin çıkış hedefini tanımlamak için aramazsanız _CrtSetReportMode , aşağıdaki varsayılanlar geçerli olur:
Onay hataları ve hataları bir hata ayıklama iletisi penceresine yönlendirilir.
Windows uygulamalarından gelen uyarılar hata ayıklayıcının çıkış penceresine gönderilir.
Konsol uygulamalarından gelen uyarılar görüntülenmez.
Aşağıdaki tabloda içinde tanımlanan rapor türleri listelenmiştir Crtdbg.h.
| Rapor türü | Açıklama |
|---|---|
_CRT_WARN |
Hemen ilgilenilmesi gerekmeyecek uyarılar, iletiler ve bilgiler. |
_CRT_ERROR |
Hatalar, kurtarılamayan sorunlar ve acil dikkat gerektiren sorunlar. |
_CRT_ASSERT |
Onay hataları (olarak değerlendirilen FALSEonaylanan ifadeler). |
_CrtSetReportMode işlevi, içinde reportMode belirtilen yeni rapor modunu içinde reportType belirtilen rapor türüne atar ve için reportTypeönceden tanımlanmış rapor modunu döndürür. Aşağıdaki tabloda için reportMode kullanılabilir seçenekler ve sonuçta elde edilen davranışı listeleniyor _CrtDbgReport. Bu seçenekler Crtdbg.h dosyasında bit bayrakları olarak tanımlanır.
| Rapor modu | _CrtDbgReport davranışı |
|---|---|
_CRTDBG_MODE_DEBUG |
İletiyi hata ayıklayıcının çıkış penceresine yazar. |
_CRTDBG_MODE_FILE |
İletiyi kullanıcı tarafından sağlanan bir dosya tanıtıcısına yazar. _CrtSetReportFile hedef olarak kullanılacak belirli dosyayı veya akışı tanımlamak için çağrılmalıdır. |
_CRTDBG_MODE_WNDW |
İptal, Yeniden Dene ve Yoksay düğmeleriyle birlikte iletiyi görüntülemek için bir ileti kutusu oluşturur. |
_CRTDBG_REPORT_MODE |
Belirtilen reportTypeiçin döndürürreportMode:1 _CRTDBG_MODE_FILE2 _CRTDBG_MODE_DEBUG4 _CRTDBG_MODE_WNDW |
Her rapor türü bir, iki veya üç mod kullanılarak veya hiç mod olmadan raporlanabilir. Bu nedenle, tek bir rapor türü için birden fazla hedef tanımlanmış olabilir. Örneğin, aşağıdaki kod parçası onay hatalarının hem hata ayıklama iletisi penceresine hem de öğesine gönderilmesine stderrneden olur:
_CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE | _CRTDBG_MODE_WNDW );
_CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDERR );
Ayrıca, her rapor türü için raporlama modunu veya modlarını ayrı ayrı denetleyebilirsiniz. Örneğin, hata reportType _CRT_WARN ayıklama iletisi penceresi kullanılarak görüntülenirken ve daha önce gösterildiği gibi öğesine gönderilirken _CRT_ASSERT bir çıkış hata ayıklama dizesine stderrgittiğini belirtmek mümkündür.
Gereksinimler
| Yordam | Gerekli başlık | İsteğe bağlı üst bilgi |
|---|---|---|
_CrtSetReportMode |
<crtdbg.h> |
<errno.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Kitaplıklar: Yalnızca C çalışma zamanı kitaplıklarının sürümlerinde hata ayıklama.