_CrtSetReportHook
İstemci tanımlı raporlama işlevini C çalışma zamanı hata ayıklama raporlama işlemine bağlayarak yükler (yalnızca hata ayıklama sürümü).
Sözdizimi
_CRT_REPORT_HOOK _CrtSetReportHook(
_CRT_REPORT_HOOK reportHook
);
Parametreler
reportHook
C çalışma zamanı hata ayıklama raporlama işlemine bağlanmak için yeni istemci tanımlı raporlama işlevi.
Dönüş değeri
Önceki istemci tanımlı raporlama işlevini döndürür.
Açıklamalar
_CrtSetReportHook
bir uygulamanın C çalışma zamanı hata ayıklama kitaplığı raporlama işleminde kendi raporlama işlevini kullanmasına izin verir. Sonuç olarak, bir hata ayıklama raporu oluşturmak için her _CrtDbgReport
çağrıldığında, önce uygulamanın raporlama işlevi çağrılır. Bu işlevsellik, bir uygulamanın belirli ayırma türlerine odaklanabilmesi veya kullanarak _CrtDbgReport
kullanılamayan hedeflere rapor gönderebilmesi için hata ayıklama raporlarını filtreleme gibi işlemler gerçekleştirmesini sağlar. Tanımlanmadığında _DEBUG
, çağrısı _CrtSetReportHook
ön işleme sırasında kaldırılır.
daha sağlam bir sürümü için _CrtSetReportHook
bkz _CrtSetReportHook2
. .
İşlev, _CrtSetReportHook
içinde reportHook
belirtilen yeni istemci tanımlı raporlama işlevini yükler ve önceki istemci tanımlı kancayı döndürür. Aşağıdaki örnekte, istemci tanımlı rapor kancasının nasıl prototipinin oluşturulacağı gösterilmektedir:
int YourReportHook( int reportType, char *message, int *returnValue );
burada reportType
hata ayıklama rapor türüdür (_CRT_WARN
, _CRT_ERROR
veya _CRT_ASSERT
), message
raporda yer almak üzere tam olarak derlenmiş hata ayıklama kullanıcı iletisidir ve returnValue
tarafından _CrtDbgReport
döndürülmesi gereken istemci tanımlı raporlama işlevi tarafından belirtilen değerdir. Kullanılabilir rapor türlerinin tam açıklaması için işleve _CrtSetReportMode
bakın.
İstemci tanımlı raporlama işlevi hata ayıklama iletisini başka raporlama gerekmemesi için tamamen işlerse işlevi döndürmelidir TRUE
. İşlev döndürdüğündeFALSE
_CrtDbgReport
, rapor türü, modu ve dosyası için geçerli ayarları kullanarak hata ayıklama raporu oluşturmak üzere çağrılır. Buna ek olarak, içinde returnValue
dönüş değerini belirterek _CrtDbgReport
uygulama hata ayıklama sonunun oluşup oluşmadığını da denetleyebilir. Hata ayıklama raporunun nasıl yapılandırıldığına ve oluşturulduğuna ilişkin eksiksiz bir açıklama için, bkz _CrtSetReportMode
. , _CrtSetReportFile
ve _CrtDbgReport
.
Diğer kanca özellikli çalışma zamanı işlevlerini kullanma ve kendi istemci tanımlı kanca işlevlerinizi yazma hakkında daha fazla bilgi için bkz . Kanca işlevi yazmada hata ayıklama.
Not
Uygulamanız /clr ile derlenirse ve uygulama main'dan çıktıktan sonra raporlama işlevi çağrılırsa, raporlama işlevi herhangi bir CRT işlevini çağırırsa CLR bir özel durum oluşturur.
Gereksinimler
Yordam | Gerekli başlık |
---|---|
_CrtSetReportHook |
<crtdbg.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.