Función RoOriginateErrorW (roerrorapi.h)
Notifica un error y una cadena informativa a un depurador adjunto.
Sintaxis
BOOL RoOriginateErrorW(
[in] HRESULT error,
[in] UINT cchMax,
[in] PCWSTR message
);
Parámetros
[in] error
Tipo: HRESULT
Código de error asociado a la condición de error. Si el error es un código correcto, como S_OK, la función no tiene ningún efecto y devuelve FALSE. Este comportamiento permite llamar a la función cuando no se ha producido ningún error sin causar un mensaje de error no deseado.
[in] cchMax
Tipo: UINT
Número máximo de caracteres en el mensaje, excepto el carácter NUL de terminación. Si el valor es 0, la cadena se lee en el primer carácter NUL o 512 caracteres, lo que sea menor. Si cchMax es mayor que 512, se omiten todos los caracteres después de 512.
[in] message
Tipo: PCWSTR
Cadena informativa para ayudar a los desarrolladores a corregir la condición de error notificada. La longitud máxima es de 512 caracteres, incluido el carácter NUL final; las cadenas más largas se truncan.
Si la cadena está vacía, la función se ejecuta correctamente, pero no se notifica ninguna información de error. Se recomienda proporcionar siempre una cadena informativa.
Si message es NULL, la función se ejecuta correctamente y notifica la cadena genérica en Winerror.h si está disponible o la cadena genérica asociada a E_FAIL.
Esta función no admite caracteres NUL incrustados, por lo que solo se notifican los caracteres antes de que se notifique el primer NUL .
La cadena de mensaje debe localizarse.
Valor devuelto
Tipo: BOOL
Código devuelto | Descripción |
---|---|
|
El mensaje de error se informó correctamente. |
|
message es NULL o apunta a una cadena vacía, o el error es un código correcto. |
Comentarios
Use la función RoOriginateErrorW para notificar una condición de error y un mensaje correspondiente a un depurador. Esta función no realiza el registro ni el seguimiento de eventos.
El error se comunica al depurador mediante la generación de una excepción estructurada. El depurador adjunto detecta esta excepción y los parámetros de excepción contienen tanto el error como la cadena de mensaje . El depurador puede mostrar estos parámetros al usuario.
Según la configuración actual del depurador, la función RoOriginateErrorW puede hacer que la ejecución se detenga en el depurador en el sitio de la excepción.
Si la marca UseSetErrorInfo se establece mediante una llamada a la función RoSetErrorReportingFlags y el subproceso de llamada se ha inicializado en COM, la función crea un objeto de error adecuado que admite IRestrictedErrorInfo y lo asocia al canal COM llamando a SetErrorInfo. Si el subproceso no se ha inicializado en COM, la llamada se realizará correctamente sin ningún error, pero el error no se asociará con el canal COM.
Requisitos
Cliente mínimo compatible | Windows 8 [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2012 [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | roerrorapi.h |
Library | RuntimeObject.lib |