Funzione WsGetHeader (webservices.h)

Trova un'intestazione standard specifica nel messaggio e la deserializza.

Sintassi

HRESULT WsGetHeader(
  [in]           WS_MESSAGE     *message,
  [in]           WS_HEADER_TYPE headerType,
  [in]           WS_TYPE        valueType,
  [in]           WS_READ_OPTION readOption,
  [in, optional] WS_HEAP        *heap,
                 void           *value,
  [in]           ULONG          valueSize,
  [in, optional] WS_ERROR       *error
);

Parametri

[in] message

Messaggio contenente l'intestazione.

Il messaggio può essere in qualsiasi stato, ma WS_MESSAGE_STATE_EMPTY.

[in] headerType

Tipo di intestazione da deserializzare.

[in] valueType

Tipo di valore da deserializzare. Vedere WS_HEADER_TYPE per il set di tipi che corrispondono a ogni tipo di intestazione.

[in] readOption

Indica se il valore è obbligatorio e come allocare il valore. WS_READ_NILLABLE_VALUE e WS_READ_NILLABLE_POINTER opzioni di lettura non possono essere specificate poiché i tipi di intestazione in WS_HEADER_TYPE non possono essere nillabili nelle rispettive specifiche standard. Per altre informazioni, vedere WS_READ_OPTION .

[in, optional] heap

Heap in cui archiviare i dati dell'intestazione deserializzati. Se si tratta di NULL, verrà usato l'heap del messaggio.

value

L'interpretazione di questo parametro dipende dalla WS_READ_OPTION.

[in] valueSize

L'interpretazione di questo parametro dipende dalla WS_READ_OPTION.

[in, optional] error

Specifica la posizione in cui devono essere archiviate informazioni aggiuntive sugli errori se la funzione ha esito negativo.

Valore restituito

Questa funzione può restituire uno di questi valori.

Codice restituito Descrizione
WS_E_INVALID_FORMAT
L'intestazione non esiste ed è necessaria.

Nel messaggio sono presenti più istanze del tipo di intestazione.

I dati di input non erano nel formato previsto.

WS_E_QUOTA_EXCEEDED
La quota di dimensioni dell'heap è stata superata.
E_OUTOFMEMORY
Memoria insufficiente per deserializzare l'intestazione.
E_INVALIDARG
Uno o più parametri non sono corretti.
Altri errori
Questa funzione può restituire altri errori non elencati sopra.

Commenti

Questa API fornisce l'accesso a un set di tipi di intestazione standard (vedere WS_HEADER_TYPE). Per i tipi di intestazione definiti dall'applicazione, usare WsGetCustomHeader.

Questa API è progettata per gestire i tipi di intestazioni che vengono visualizzati una volta nel messaggio e sono destinati al ricevitore finale. Le intestazioni destinate a un ruolo/attore diverso dal ricevitore finale vengono ignorate da questa API.

Requisiti

Requisito Valore
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