_CrtSetReportMode
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 _CrtDbgReport
tü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_ERROR
ve _CRT_ASSERT
.
reportMode
için reportType
yeni rapor modu veya modları.
Dönüş değeri
Başarıyla tamamlandığında, _CrtSetReportMode
içinde reportType
belirtilen 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 reportMode
geç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_errlist
ve _sys_nerr
.
Açıklamalar
_CrtSetReportMode
için _CrtDbgReport
çıkış hedefini belirtir. , , _ASSERTE
_RPT
ve _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 FALSE onaylanan 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 reportType için döndürürreportMode :1 _CRTDBG_MODE_FILE 2 _CRTDBG_MODE_DEBUG 4 _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 stderr
neden 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 stderr
gittiğ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.