Función RoTransformError (roerrorapi.h)
Notifica un error modificado y una cadena informativa a un depurador adjunto.
Sintaxis
BOOL RoTransformError(
[in] HRESULT oldError,
[in] HRESULT newError,
[in] HSTRING message
);
Parámetros
[in] oldError
Tipo: HRESULT
Código de error original asociado a la condición de error.
[in] newError
Tipo: HRESULT
Código de error diferente que se va a asociar a la condición de error. Si oldError y newError son los mismos, o ambos son códigos de éxito, como S_OK, la función no tiene ningún efecto y devuelve FALSE.
[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 nulo 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.
Aunque la cadena de mensaje es un HSTRING, la función RoTransformError no admite caracteres NULL incrustados, por lo que solo se notifican los caracteres antes de que se notifique el primer valor NULL.
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 oldError y newError son los mismos, o ambos son códigos de éxito. |
Comentarios
Use la función RoTransformError para sustituir un código de error personalizado por una condición de error existente. Por ejemplo, si la condición de error actual es E_FAIL, puede sustituir un código de error más específico, como E_FILENOTFOUND y notificar el error transformado a un depurador adjunto.
El comportamiento de la función RoTransformError es el mismo que la función RoTransformErrorW .
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 |