Share via


Função RoOriginateError (roerrorapi.h)

Relata um erro e uma cadeia de caracteres informativa para um depurador anexado.

Sintaxe

BOOL RoOriginateError(
  [in] HRESULT error,
  [in] HSTRING message
);

Parâmetros

[in] error

Tipo: HRESULT

O código de erro associado à condição de erro. Se o erro for um código de êxito, como S_OK, a função não terá efeito e retornará FALSE. Esse comportamento permite chamar a função quando nenhum erro ocorreu sem causar uma mensagem de erro indesejada.

[in] message

Tipo: HSTRING

Uma cadeia de caracteres informativa para ajudar os desenvolvedores a corrigir a condição de erro relatada. O comprimento máximo é de 512 caracteres, incluindo o caractere NUL à direita; cadeias de caracteres mais longas são truncadas.

Se a cadeia de caracteres estiver vazia, a função terá êxito, mas nenhuma informação de erro será relatada. É recomendável que você sempre forneça uma cadeia de caracteres informativa.

Se a mensagem for NULL, a função terá êxito e relatará a cadeia de caracteres genérica em Winerror.h se disponível ou a cadeia de caracteres genérica associada a E_FAIL.

Essa função não dá suporte a caracteres NUL inseridos, portanto, somente os caracteres antes do primeiro NUL são relatados.

A cadeia de caracteres de mensagem deve ser localizada.

Retornar valor

Tipo: BOOL

Código de retorno Descrição
TRUE
A mensagem de erro foi relatada com êxito.
FALSE
message é NULL ou aponta para uma cadeia de caracteres vazia ou o erro é um código de êxito.

Comentários

Use a função RoOriginateError para relatar uma condição de erro e uma mensagem correspondente a um depurador. Essa função não executa o registro em log ou o rastreamento de eventos.

O erro é comunicado ao depurador gerando uma exceção estruturada. Essa exceção é capturada pelo depurador anexado e os parâmetros de exceção contêm o erro e a cadeia de caracteres de mensagem . O depurador pode exibir esses parâmetros para o usuário.

Dependendo da configuração atual do depurador, a função RoOriginateError pode fazer com que a execução seja interrompida no depurador no site da exceção.

Se o sinalizador UseSetErrorInfo for definido chamando a função RoSetErrorReportingFlags e o thread de chamada tiver sido inicializado em COM, a função criará um objeto de erro apropriado que dá suporte a IRestrictedErrorInfo e o associará ao canal COM chamando SetErrorInfo. Se o thread não tiver sido inicializado em COM, a chamada ainda terá êxito sem nenhum erro, mas o erro não será associado ao canal COM.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho roerrorapi.h
Biblioteca RuntimeObject.lib

Confira também

RO_ERROR_REPORTING_FLAGS

RoGetErrorReportingFlags

RoOriginateErrorW

RoSetErrorReportingFlags

RoTransformError