Funzione WsAcceptChannel (webservices.h)
Accetta il messaggio in arrivo successivo dal listener specificato.
Sintassi
HRESULT WsAcceptChannel(
[in] WS_LISTENER *listener,
[in] WS_CHANNEL *channel,
[in, optional] const WS_ASYNC_CONTEXT *asyncContext,
[in, optional] WS_ERROR *error
);
Parametri
[in] listener
Puntatore a una struttura WS_LISTENER che rappresenta il listener. Questo è il listener passato a WsCreateChannelForListener al momento della creazione del canale.
[in] channel
Puntatore a una struttura WS_CHANNEL che rappresenta il canale da accettare.
[in, optional] asyncContext
Puntatore a una struttura di dati WS_ASYNC_CONTEXT con informazioni per richiamare la funzione in modo asincrono. Passare un valore NULL per un'operazione sincrona.
[in, optional] error
Puntatore a una struttura WS_ERROR che riceve informazioni di errore aggiuntive se la funzione ha esito negativo.
Valore restituito
Se la funzione ha esito positivo, restituisce NO_ERROR; in caso contrario, restituisce un codice di errore HRESULT.
Codice restituito | Descrizione |
---|---|
|
L'operazione asincrona è ancora in sospeso. |
|
Il listener o il canale è stato interrotto. |
|
Il listener ha avuto errore. Vedere la sezione relativa alle osservazioni. |
|
Il listener o il canale o entrambi erano in uno stato inappropriato. Vedere la sezione relativa alle osservazioni. |
|
La connessione con l'endpoint remoto è stata terminata. |
|
L'operazione non è stata completata entro il tempo assegnato. |
|
È stata superata una quota. |
|
I dati di input non erano nel formato previsto o non hanno il valore previsto. |
|
Memoria insufficiente per completare l'operazione. |
|
Uno o più argomenti non sono validi. |
|
La verifica della sicurezza non ha avuto esito positivo per i dati ricevuti. |
|
Operazione di sicurezza non riuscita nel framework di Servizi Web Windows. |
|
Questa funzione può restituire altri errori non elencati sopra. |
Commenti
Dopo aver accettato un canale, è necessario chiuderlo quando non è più necessario e liberare le risorse chiamando
Funzione WsCloseChannel e quindi chiamata a WsFreeChannel o WsResetChannel.
CHANGETABLE(CHANGES …).
Affinché WsAcceptChannel abbia esito positivo, il listener deve essere in stato WS_LISTENER_STATE_OPEN e il canale deve essere in WS_CHANNEL_STATE_CREATED stato. Per altre informazioni, vedere l'enumerazione WS_LISTENER_STATE e WS_CHANNEL_STATE .
Se un listener si trova nello stato di WS_LISTENER_STATE_FAULTED ,
WsAcceptChannel restituisce immediatamente il codice di errore WS_E_OBJECT_FAULTED . Se un'applicazione chiama WsAcceptChannel in un ciclo, l'applicazione deve verificare la presenza di questo errore, in modo che possa terminare il ciclo.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | webservices.h |
Libreria | WebServices.lib |
DLL | WebServices.dll |