Compartilhar via


Funções de gancho do relatório

Uma função de gancho de relatório, instalada usando _CrtSetReportHook, é chamada sempre que _CrtDbgReport gera um relatório de depuração. Você pode usá-la, entre outras coisas, para filtrar relatórios com foco em tipos de alocações específicos. Uma função de gancho de relatório deve ter um protótipo como o seguinte:

int YourReportHook(int nRptType, char *szMsg, int *retVal);

O ponteiro que você passa para _CrtSetReportHook é do tipo _CRT_REPORT_HOOK, conforme definido em CRTDBG.H:

typedef int (__cdecl *_CRT_REPORT_HOOK)(int, char *, int *);

Quando a biblioteca em tempo de execução chama sua função de gancho, o argumento de nRptType contém a categoria do relatório (_CRT_WARN, _CRT_ERROR ou _CRT_ASSERT), szMsg contém um ponteiro para uma cadeia de caracteres de mensagem de relatório completamente montada e retVal especifica se _CrtDbgReport deve continuar a execução normal depois de gerar o relatório ou iniciar o depurador. (Um valor de retVal igual a zero continua a execução, um valor igual a 1 inicia o depurador).

Se o gancho tratar completamente a mensagem em questão, de modo que nenhum relatório adicional seja necessário, ele retornará TRUE. Caso ele retorne FALSE, _CrtDbgReport relatará a mensagem normalmente.

Consulte também

Outros recursos

Gravação da função de gancho de depuração

crt_dbg2 Sample