Funzione WsCreateFaultFromError (webservices.h)

Costruisce un WS_FAULT da un oggetto di errore specificato.

Sintassi

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

Parametri

[in] error

Puntatore a una struttura WS_ERROR che rappresenta l'oggetto errore da cui costruire l'errore.

[in] faultErrorCode

Codice di errore HRESULT restituito dalla funzione non riuscita. Il valore HRESULT non può essere un codice di operazione riuscita.

Questo codice di errore non viene mai incluso direttamente nell'errore, ma viene usato come meccanismo di fallback per la creazione di una stringa di errore se l'oggetto errore non contiene stringhe di errore.

[in] faultDisclosure

WS_FAULT_DISCLOSURE'enumerazione che controlla le informazioni copiate dall'oggetto error all'oggetto fault.

[in] heap

Puntatore a una struttura WS_HEAP che rappresenta l'heap da cui allocare memoria per l'oggetto di errore restituito.

[out] fault

Puntatore a una struttura WS_FAULT che rappresenta l'oggetto di errore restituito. I campi dell'oggetto di errore sono validi fino a quando non viene chiamato WsFreeHeap o WsResetHeap per rilasciare le risorse dell'heap specificate.

Valore restituito

Se la funzione ha esito positivo, restituisce NO_ERROR; in caso contrario, restituisce un codice di errore HRESULT.

Codice restituito Descrizione
E_INVALIDARG
Uno o più argomenti non sono validi.
E_OUTOFMEMORY
Memoria insufficiente per completare l'operazione.
Altri errori
Questa funzione può restituire altri errori non elencati in precedenza.

Commenti

Se l'oggetto errore contiene un errore, ovvero il valore WS_FAULT_ERROR_PROPERTY_FAULT di WS_FAULT_ERROR_PROPERTY_ID è diverso da NULL, l'errore viene selezionato per costruire l'errore restituito.

Se l'oggetto errore non contiene un errore (WS_FAULT_ERROR_PROPERTY_FAULT è NULL), viene selezionato un errore generico con un codice di errore generico (e nessun testo motivo) per costruire l'errore restituito.

Se l'errore selezionato non include alcun testo motivo, il testo del motivo di errore viene costruito in base al valore del parametro di divulgazione :

  • WS_FULL_FAULT_DISCLOSURE Tutte le stringhe di errore presenti nell'oggetto error vengono aggiunte insieme per formare il testo del motivo. Se non sono presenti stringhe, viene usata la stringa associata al parametro errorCode .
  • WS_MINIMAL_FAULT_DISCLOSURE viene usata una stringa di errore generica.

Per impostazione predefinita, la lingua di tutte le informazioni dipendenti dalla lingua nell'oggetto errore è la lingua dell'interfaccia utente predefinita dell'utente corrente. È tuttavia possibile modificare la lingua impostando la proprietà WS_ERROR_PROPERTY_LANGID. Vedere l'enumerazione WS_ERROR_PROPERTY_ID .

Requisiti

   
Client minimo supportato Windows 7 [app desktop | App UWP]
Server minimo supportato Windows Server 2008 R2 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione webservices.h
Libreria WebServices.lib
DLL WebServices.dll