_CrtSetReportHook
Instala una función de generación de informes definida por el cliente enlazándola al proceso de creación de informes de depuración en tiempo de ejecución de C (solo versión de depuración).
Sintaxis
_CRT_REPORT_HOOK _CrtSetReportHook(
_CRT_REPORT_HOOK reportHook
);
Parámetros
reportHook
Nueva función de creación de informes definida por el cliente que se va a enlazar al proceso de creación de informes de depuración en tiempo de ejecución de C.
Valor devuelto
Devuelve la función de creación de informes definida por el cliente anterior.
Comentarios
_CrtSetReportHook
permite que una aplicación use su propia función de creación de informes en el proceso de creación de informes de la biblioteca de depuración en tiempo de ejecución de C. Como resultado, cada vez que _CrtDbgReport
se llama para generar un informe de depuración, primero se llama a la función de informes de la aplicación. Esta funcionalidad permite que una aplicación realice operaciones como el filtrado de informes de depuración, de modo que se pueda centrar en determinados tipos de asignación o enviar un informe a destinos no disponibles mediante _CrtDbgReport
. Cuando _DEBUG
no se define, las llamadas a _CrtSetReportHook
se quitan durante el preprocesamiento.
Para obtener una versión más sólida de _CrtSetReportHook
, vea _CrtSetReportHook2
.
La función _CrtSetReportHook
instala la nueva función de creación de informes definida por el cliente especificada en reportHook
y devuelve el enlace definido por el cliente anterior. En el ejemplo siguiente se muestra cómo se deben crear prototipos de un enlace de informe definido por el cliente:
int YourReportHook( int reportType, char *message, int *returnValue );
donde reportType
es el tipo de informe de depuración (_CRT_WARN
, _CRT_ERROR
o _CRT_ASSERT
), message
es el mensaje totalmente ensamblado de usuario de depuración que se debe incluir en el informe, y returnValue
es el valor especificado por la función de creación de informes definida por el cliente que _CrtDbgReport
debe devolver. Para obtener una descripción completa de los tipos de informe disponibles, consulte la _CrtSetReportMode
función .
Si la función de creación de informes definida por el cliente controla completamente el mensaje de depuración para que no sea necesario ningún otro informe, la función debe devolver TRUE
. Cuando la función devuelve FALSE
, se llama a _CrtDbgReport
para generar el informe de depuración mediante la configuración actual de tipo, modo y archivo de informe. Además, si se especifica el valor devuelto por _CrtDbgReport
en returnValue
, la aplicación también puede controlar si se produce una interrupción de depuración. Para obtener una descripción completa de cómo se configura y genera el informe de depuración, vea _CrtSetReportMode
, _CrtSetReportFile
y _CrtDbgReport
.
Para obtener más información sobre el uso de otras funciones en tiempo de ejecución compatibles con enlace y la escritura de sus propias funciones de enlace definidas por el cliente, consulte Escritura de funciones de enlace de depuración.
Nota:
Si la aplicación se compila con /clr y se llama a la función de creación de informes una vez que la aplicación se ha cerrado, CLR inicia una excepción si la función de creación de informes llama a cualquier función de CRT.
Requisitos
Routine | Encabezado necesario |
---|---|
_CrtSetReportHook |
<crtdbg.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Bibliotecas
Solo versiones de depuración de las bibliotecas en tiempo de ejecución de C.