Funzione WsReadMessageStart (webservices.h)
Leggere le intestazioni del messaggio successivo dal canale e prepararsi a leggere gli elementi del corpo.
Sintassi
HRESULT WsReadMessageStart(
[in] WS_CHANNEL *channel,
[in] WS_MESSAGE *message,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
);
Parametri
[in] channel
Canale da cui ricevere.
[in] message
Messaggio da ricevere.
[in, optional] asyncContext
Informazioni su come richiamare la funzione in modo asincrono o NULL se si richiama in modo sincrono.
[in, optional] error
Specifica dove archiviare informazioni aggiuntive sull'errore se la funzione ha esito negativo.
Valore restituito
Questa funzione può restituire uno di questi valori.
Codice restituito | Descrizione |
---|---|
|
L'inizio del messaggio è stato ricevuto correttamente. |
|
Non sono disponibili altri messaggi nel canale. |
|
L'operazione asincrona è ancora in sospeso. |
|
L'operazione è stata interrotta. |
|
L'operazione non è consentita a causa dello stato corrente dell'oggetto . |
|
L'endpoint remoto non esiste o non è stato possibile individuarsi. |
|
L'accesso è stato negato dall'endpoint remoto. |
|
La connessione con l'endpoint remoto è stata terminata. |
|
L'endpoint remoto non è riuscito a elaborare la richiesta. |
|
L'endpoint remoto non è attualmente in servizio in questa posizione. |
|
L'endpoint remoto non è in grado di elaborare la richiesta a causa dell'overload. |
|
L'endpoint remoto non è raggiungibile. |
|
L'URL dell'indirizzo dell'endpoint non è valido. |
|
I dati di input non erano nel formato previsto o non hanno il valore previsto. |
|
L'operazione non è stata completata entro il tempo assegnato. |
|
Accesso negato dal server proxy HTTP. |
|
Il server proxy HTTP non è riuscito a elaborare la richiesta. |
|
È stata superata una quota. |
|
La verifica di sicurezza non è riuscita per i dati ricevuti. |
|
Un'operazione di sicurezza non è riuscita nel framework di Servizi Web Windows. |
|
Un token di sicurezza è stato rifiutato dal server perché è scaduto. |
|
Il server proxy HTTP richiede lo schema di autenticazione HTTP "basic". |
|
Il server proxy HTTP richiede lo schema di autenticazione HTTP "digest". |
|
Il server proxy HTTP richiede lo schema di autenticazione HTTP 'negotiate'. |
|
Il server proxy HTTP richiede lo schema di autenticazione HTTP 'NTLM'. |
|
L'endpoint remoto richiede lo schema di autenticazione HTTP 'basic'. |
|
L'endpoint remoto richiede lo schema di autenticazione HTTP "digest". |
|
L'endpoint remoto richiede lo schema di autenticazione HTTP 'negotiate'. |
|
L'endpoint remoto richiede lo schema di autenticazione HTTP 'NTLM'. |
|
Un certificato obbligatorio non rientra nel periodo di validità durante la verifica rispetto all'orologio di sistema corrente o al timestamp nel file firmato. |
|
Il nome CN dei certificati non corrisponde al valore passato. |
|
Catena di certificati elaborata, ma terminata in un certificato radice che non è considerato attendibile dal provider di attendibilità. |
|
Il certificato non è valido per l'utilizzo richiesto. |
|
La funzione di revoca non è in grado di completare il controllo di revoca perché il server di revoca è offline. |
|
Memoria insufficiente. |
|
Uno o più argomenti non sono validi. |
|
Questa funzione può restituire altri errori non elencati in precedenza. |
Commenti
Viene letto l'inizio del messaggio successivo dal canale, incluse le intestazioni del messaggio.
Questa funzione è simile a WsReadEnvelopeStart , ma viene usata con i canali.
Al termine dell'operazione, le intestazioni verranno archiviate nel messaggio e saranno accessibili in modo ad accesso casuale, ad esempio usando WsGetHeader.
Il messaggio deve essere nello stato WS_MESSAGE_STATE_EMPTY . Al termine dell'operazione, il messaggio verrà passato allo stato WS_MESSAGE_STATE_READING .
Per deserializzare un elemento del corpo del messaggio, usare WsReadBody. Per leggere direttamente dal lettore XML del messaggio, ottenere prima di tutto il lettore usando la proprietà WS_MESSAGE_PROPERTY_BODY_READER .
Se l'input del canale viene trasmesso (WS_STREAMED_INPUT_TRANSFER_MODE), WsFillBody deve essere chiamato per ricevere la parte successiva del corpo prima di essere effettivamente letto.
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 |