Compartilhar via


Função WsCreateFaultFromError (webservices.h)

Constrói um WS_FAULT de um objeto de erro especificado.

Sintaxe

HRESULT WsCreateFaultFromError(
  [in]  WS_ERROR            *error,
  [in]  HRESULT             faultErrorCode,
  [in]  WS_FAULT_DISCLOSURE faultDisclosure,
  [in]  WS_HEAP             *heap,
  [out] WS_FAULT            *fault
);

Parâmetros

[in] error

Ponteiro para uma estrutura WS_ERROR que representa o objeto de erro do qual construir a falha.

[in] faultErrorCode

O código de erro HRESULT retornado da função que falhou. O valor HRESULT não pode ser um código de êxito.

Esse código de erro nunca é incluído na falha diretamente, mas é usado como um mecanismo de fallback para criar uma cadeia de caracteres de falha se o objeto de erro não contiver nenhuma cadeia de caracteres de erro.

[in] faultDisclosure

WS_FAULT_DISCLOSURE enumeração que controla quais informações são copiadas do objeto de erro para o objeto de falha.

[in] heap

Ponteiro para uma estrutura WS_HEAP que representa o heap do qual alocar memória para o objeto de falha retornado.

[out] fault

Ponteiro para uma estrutura WS_FAULT que representa o objeto de falha retornado. Os campos do objeto de falha são bons até que WsFreeHeap ou WsResetHeap seja chamado para liberar os recursos de heap especificados.

Retornar valor

Se a função for bem-sucedida, ela retornará NO_ERROR; caso contrário, ele retorna um código de erro HRESULT.

Código de retorno Descrição
E_INVALIDARG
Um ou mais argumentos são inválidos.
E_OUTOFMEMORY
Memória insuficiente para concluir a operação.
Outros erros
Essa função pode retornar outros erros não listados acima.

Comentários

Se o objeto de erro contiver uma falha (ou seja, o valor WS_FAULT_ERROR_PROPERTY_FAULT de WS_FAULT_ERROR_PROPERTY_ID não for NULL), essa falha será selecionada para construir a falha retornada.

Se o objeto de erro não contiver uma falha (WS_FAULT_ERROR_PROPERTY_FAULT for NULL), uma falha genérica com um código de falha genérico (e nenhum texto de motivo) será selecionada para construir a falha retornada.

Se a falha selecionada não incluir nenhum texto de motivo, o texto do motivo da falha será construído de acordo com o valor do parâmetro de divulgação :

  • WS_FULL_FAULT_DISCLOSURE Todas as cadeias de caracteres de erro presentes no objeto de erro são acrescentadas para formar o texto do motivo. Se não houver cadeias de caracteres, a cadeia de caracteres associada ao parâmetro errorCode será usada.
  • WS_MINIMAL_FAULT_DISCLOSURE Uma cadeia de caracteres de erro genérica é usada.

Por padrão, o idioma de qualquer informação dependente de idioma no objeto de erro é a linguagem de interface do usuário padrão do usuário atual. No entanto, você pode alterar o idioma definindo a propriedade WS_ERROR_PROPERTY_LANGID. Consulte a enumeração WS_ERROR_PROPERTY_ID .

Requisitos

   
Cliente mínimo com suporte Windows 7 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho webservices.h
Biblioteca WebServices.lib
DLL WebServices.dll