Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Le informazioni contenute in questo argomento sono valide per:
Edition |
Visual Basic |
C# |
C++ |
Web Developer |
|---|---|---|---|---|
Express |
![]() |
![]() |
Solo nativo |
![]() |
Standard |
![]() |
![]() |
Solo nativo |
![]() |
Pro e Team |
![]() |
![]() |
Solo nativo |
![]() |
Legenda tabella:
![]() |
Si applica |
![]() |
Non applicabile |
![]() |
Comando o comandi nascosti per impostazione predefinita. |
Una funzione hook per la creazione di report, installata mediante _CrtSetReportHook, viene chiamata ogni volta che _CrtDbgReport genera un report di debug. È possibile utilizzare tale funzione, ad esempio, per filtrare i report in modo da concentrarsi su tipi specifici di allocazioni. Una funzione hook per la creazione di report deve avere un prototipo analogo al seguente:
int YourReportHook(int nRptType, char *szMsg, int *retVal);
Il puntatore che viene passato a _CrtSetReportHook è del tipo _CRT_REPORT_HOOK, come definito in CRTDBG.H:
typedef int (__cdecl *_CRT_REPORT_HOOK)(int, char *, int *);
Quando la libreria di runtime chiama la funzione hook, l'argomento nRptType contiene la categoria del report (_CRT_WARN, _CRT_ERROR o _CRT_ASSERT), szMsg contiene un puntatore a una stringa di messaggio di report completa e retVal specifica se _CrtDbgReport debba continuare la normale esecuzione dopo la generazione del report o avviare invece il debugger (se retVal ha valore zero l'esecuzione continua, se ha valore 1 viene avviato il debugger).
Se la funzione hook gestisce il messaggio in questione completamente, in modo che non sia necessario alcun report ulteriore, deve restituire TRUE. Se restituisce FALSE, _CrtDbgReport visualizzerà il messaggio normalmente.
Vedere anche
Attività
Esempio crt_dbg2: funzioni hook di debug del runtime del linguaggio C
.gif)
.gif)
.gif)