Función RoOriginateError (roerrorapi.h)
Notifica un error y una cadena informativa a un depurador adjunto.
Sintaxis
BOOL RoOriginateError(
[in] HRESULT error,
[in] HSTRING 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] message
Tipo: HSTRING
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 realiza correctamente, pero no se notifica información de error. Se recomienda proporcionar siempre una cadena informativa.
Si message es NULL, la función se realiza correctamente e informa de 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 RoOriginateError 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 con el 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.
En función de la configuración actual del depurador, la función RoOriginateError puede hacer que la ejecución se detenga en el depurador en el sitio de la excepción.
Si la marca UseSetErrorInfo se establece llamando 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 seguirá funcionando sin errores, pero el error no se asociará al canal COM.
Requisitos
Requisito | Value |
---|---|
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 |