Sdílet prostřednictvím


_CrtSetReportHook

Nainstaluje funkci generování sestav definovanou klientem tak, že ji připojíte k procesu generování sestav za běhu jazyka C (pouze ladicí verze).

Syntaxe

_CRT_REPORT_HOOK _CrtSetReportHook(
   _CRT_REPORT_HOOK reportHook
);

Parametry

reportHook
Nová klientem definovaná funkce generování sestav, která se připojí k procesu generování sestav za běhu jazyka C.

Vrácená hodnota

Vrátí předchozí funkci generování sestav definovanou klientem.

Poznámky

_CrtSetReportHook umožňuje aplikaci používat vlastní funkci generování sestav do procesu generování sestav knihovny runtime jazyka C. V důsledku toho se funkce _CrtDbgReport generování sestavy generování sestavy aplikace volá jako první. Tato funkce umožňuje aplikaci provádět operace, jako je filtrování sestav ladění, aby se mohla zaměřit na konkrétní typy přidělení nebo odeslat sestavu do cílů, které nejsou dostupné pomocí _CrtDbgReport. Pokud _DEBUG není definováno, volání, která _CrtSetReportHook se mají odebrat během předběžného zpracování.

Robustnější verzi _CrtSetReportHooknaleznete v tématu _CrtSetReportHook2.

Funkce _CrtSetReportHook nainstaluje novou funkci generování sestav definovanou klientem a reportHook vrátí předchozí háček definovaný klientem. Následující příklad ukazuje, jak by se měl vytvořit prototyp háku sestavy definovaného klientem:

int YourReportHook( int reportType, char *message, int *returnValue );

kde reportType je typ sestavy ladění (_CRT_WARN, _CRT_ERRORnebo _CRT_ASSERT), message je plně sestavená zpráva uživatele ladění, která má být obsažena v sestavě, a returnValue je hodnota určená klientem definovanou funkcí generování sestav, která by měla být vrácena _CrtDbgReport. Úplný popis dostupných typů sestav najdete v _CrtSetReportMode této funkci.

Pokud klientem definovaná funkce generování sestav zcela zpracovává ladicí zprávu tak, aby se nevyžaduje žádné další generování sestav, měla by funkce vrátit TRUE. Když funkce vrátí FALSE, _CrtDbgReport je volána k vygenerování ladicí sestavy pomocí aktuálního nastavení pro typ sestavy, režim a soubor. Kromě toho zadáním návratové _CrtDbgReport hodnoty v returnValueaplikaci může také řídit, zda dojde k přerušení ladění. Úplný popis konfigurace a vygenerování sestavy ladění naleznete v tématu _CrtSetReportMode, _CrtSetReportFilea _CrtDbgReport.

Další informace o používání dalších funkcí za běhu podporujících háky a psaní vlastních funkcí háku definovaných klientem najdete v tématu Psaní funkce háku ladění.

Poznámka:

Pokud je vaše aplikace zkompilována pomocí /clr a funkce generování sestav je volána po ukončení hlavní aplikace, CLR vyvolá výjimku, pokud funkce generování sestav volá některé funkce CRT.

Požadavky

Rutina Požadovaný hlavičkový soubor
_CrtSetReportHook <crtdbg.h>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Knihovny

Ladění pouze verzí knihoven runtime jazyka C.

Viz také

Rutiny ladění
_CrtGetReportHook