Exportar (0) Imprimir
Expandir todo
div
EOF
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

_CrtDbgReport, _CrtDbgReportW

Genera un informe con un mensaje de depuración y envía el informe en tres posibles destinos (versión de depuración solo).

int _CrtDbgReport( 
   int reportType,
   const char *filename,
   int linenumber,
   const char *moduleName,
   const char *format [,
   argument] ... 
);
int _CrtDbgReportW( 
   int reportType,
   const wchar_t *filename,
   int linenumber,
   const wchar_t *moduleName,
   const wchar_t *format [,
   argument] ... 
);

reportType

Informe tipo: _CRT_WARN, _CRT_ERROR, y_CRT_ASSERT.

filename

Puntero al nombre del archivo de código fuente donde validar/informe producido o NULL.

linenumber

Número de línea del archivo de código fuente donde validar/informe producido o NULL.

moduleName

Puntero al nombre del módulo (.exe o .dll) donde validar o informe.

format

Cadena de la formato-CONTROL de puntero utilizada para crear el mensaje de usuario.

argument

Argumentos opcionales de sustitución utilizados por format.

Para todos los destinos del informe, _CrtDbgReport y _CrtDbgReportW devuelven – 1 si se produce un error y 0 si no se encuentra ningún error. Sin embargo, cuando el destino del informe es una ventana de mensajes de depuración y el usuario hace clic en el botón de Retry , devuelva 1. de estas funciones. Si el usuario hace clic en el botón de Abort en la ventana de mensajes de depuración, estas funciones inmediatamente anulan y devuelven un valor.

La macro-instrucción de depuración de _RPT, _RPTF_CrtDbgReport para generar los informes de depuración. Las versiones de caracteres anchos de estas macros así como _ASSERT [E], _RPTWn y _RPTFWn, utilice _CrtDbgReportW para generar los informes de depuración. Cuando _CrtDbgReport o el retorno 1 de _CrtDbgReportW , estas macros iniciar el depurador, siempre que la depuración Just-In-Time está (JIT) habilitada.

_CrtDbgReport y _CrtDbgReportW pueden enviar el informe de depuración a tres diferentes destinos: un archivo de informe de depuración, una depuración monitor (el depurador de Visual Studio ), o una ventana de mensajes de depuración. Dos funciones de configuración, _CrtSetReportMode y _CrtSetReportFile, se utilizan para especificar el destino o destinos para cada tipo de informe. Estas funciones permiten el destino o destinos de informe para cada informe escrito para controlar por separado. Por ejemplo, es posible especificar que reportType de _CRT_WARN sólo se envía a la depuración monitor, mientras que reportType de _CRT_ASSERT se envía a una ventana de mensajes de depuración y un archivo de informe definido por el usuario.

_CrtDbgReportW constituye la versión con caracteres anchos de _CrtDbgReport. Todos los parámetros de salida y de la cadena están en cadenas de caracteres; si no es idéntica a la versión de caracteres de un solo byte.

_CrtDbgReport y _CrtDbgReportW crean el mensaje de usuario para el informe de depuración sustituyendo los argumentos de argument[n] en la cadena de format , utilizando las mismas reglas definido por printf o wprintf funciona. Estas funciones se genera el informe de depuración y determinar el destino o destinos, basándose en los modos de informe y el archivo actual definido para reportType. Cuando el informe se envía a una ventana de mensajes de depuración, filename, lineNumber, y moduleName se incluyen en la información mostrada en la ventana.

La tabla siguiente se enumeran las opciones disponibles para el modo de informe o los modos y el archivo y el comportamiento resultante de _CrtDbgReport y de _CrtDbgReportW. Estas opciones se definen como el bit marca en Crtdbg.h.

modo de informe

archivo de informe

_CrtDbgReport , comportamiento de _CrtDbgReportW

_CRTDBG_MODE_DEBUG

No es aplicable

escribe el mensaje a Windows OutputDebugString API.

_CRTDBG_MODE_WNDW

No es aplicable

Llamadas Windows MessageBox API para crear el cuadro de mensaje para mostrar el mensaje junto con Abort, Retry, y los botones de Ignore . Si un usuario hace clic en Abort, _CrtDbgReport o las anulaciones de _CrtDbgReport inmediatamente. Si un usuario hace clic en Retry, devuelve 1. Si un usuario hace clic en Ignore, la ejecución continúa y _CrtDbgReport y devuelva 0 de _CrtDbgReportW . Observe que haga clic en Ignore cuando existe una condición de error a menudo los resultados en “un comportamiento indefinido.”

_CRTDBG_MODE_FILE

__HFILE

Escribe el mensaje HANDLEtras, mediante Windows WriteFile API y no comprueba la validez del identificador de archivo; la aplicación es responsable de abrir el archivo de informe y pasar un identificador de archivos válido.

_CRTDBG_MODE_FILE

_CRTDBG_FILE_STDERR

escribe el mensaje a stderr.

_CRTDBG_MODE_FILE

_CRTDBG_FILE_STDOUT

escribe el mensaje a stdout.

El informe se puede enviar un, dos, tres o destinos o ningún destino en absoluto. Para obtener más información sobre cómo especificar el modo de informe o los modos y el archivo de informe, vea _CrtSetReportMode y _CrtSetReportFile funciona. Para obtener más información sobre cómo utilizar las macros de depuración e informar de las funciones, vea Utilizando las macros para comprobación e informes.

Si la aplicación necesita más flexibilidad que la proporcionada por _CrtDbgReport y _CrtDbgReportW, puede escribir dispone de la función y el enlace de informe él en el mecanismo de informe de la biblioteca en tiempo de ejecución de C mediante la función de _CrtSetReportHook .

rutina

Encabezado necesario

_CrtDbgReport

<crtdbg.h>

_CrtDbgReportW

<crtdbg.h>

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

bibliotecas

Versiones de depuración de Bibliotecas en tiempo de ejecución de C únicamente.

// crt_crtdbgreport.c
#include <crtdbg.h>

int main() {
#ifdef _DEBUG
   CrtDbgReport(_CRT_ASSERT, NULL, NULL, "some module", NULL);
#endif
}

Vea crt_dbg2 para obtener un ejemplo de cómo cambiar la función del informe.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft