_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).

_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. Por tanto, siempre que se llama a _CrtDbgReport para generar un informe de depuración, primero se llama a la función de creació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 no se define _DEBUG, 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, vea la función _CrtSetReportMode.

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 cómo usar otras funciones con capacidad de enlace en tiempo de ejecución y cómo escribir funciones de enlace definidas por el cliente, vea Creación de funciones de enlace de depuración.

NotaNota

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

Rutina

Encabezado necesario

_CrtSetReportHook

<crtdbg.h>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

Bibliotecas

Solo las versiones de depuración de las bibliotecas en tiempo de ejecución de C.

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Vea también

Referencia

Rutinas de depuración

_CrtGetReportHook