Función RoOriginateLanguageException (roerrorapi.h)
Notifica un error, una cadena informativa y un objeto de error a un depurador adjunto.
Sintaxis
BOOL RoOriginateLanguageException(
[in] HRESULT error,
[in, optional] HSTRING message,
[in] IUnknown *languageException
);
Parámetros
[in] error
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, optional] message
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.
[in] languageException
Objeto de error que es apartment-agile, in-proc y serializar por valor entre procesos. Este objeto debe implementar ILanguageExceptionStackBackTrace e ILanguageExceptionTransform si es necesario.
Valor devuelto
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
La función RoOriginateLanguageException se comporta como RoOriginateError , pero toma otro parámetro que almacena información adicional sobre el error. Las proyecciones de lenguaje usan esta función para almacenar información de excepciones junto con la información de error COM. Las proyecciones de lenguaje deben crear un objeto IUnknown que contenga toda la información necesaria para volver a crear la excepción más adelante.
El objeto de error debe ser apartment-agile, in-proc y serializar por valor entre procesos. El motivo de esta restricción es que el subproceso desde el que se originó el objeto de error ya no existe, por ejemplo debido a una llamada a CoUninitialize , en el momento en que se recupera la información de error.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1 [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2012 R2 [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | roerrorapi.h |
Library | RuntimeObject.lib |
Archivo DLL | ComBase.dll |