Condividi tramite


Funzione WsCloseServiceHost (webservices.h)

Chiude la comunicazione con l'host del servizio specificato.

Sintassi

HRESULT WsCloseServiceHost(
  [in]           WS_SERVICE_HOST        *serviceHost,
  [in, optional] const WS_ASYNC_CONTEXT *asyncContext,
  [in, optional] WS_ERROR               *error
);

Parametri

[in] serviceHost

Puntatore a una struttura WS_SERVICE_HOST che rappresenta l'host del servizio da chiudere.

[in, optional] asyncContext

Puntatore a una struttura WS_ASYNC_CONTEXT contenente informazioni per richiamare la funzione in modo asincrono. Passare NULL per richiamare la funzione in modo sincrono.

[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
WS_S_ASYNC
L'operazione asincrona è ancora in sospeso.
WS_E_INVALID_OPERATION
Lo stato corrente dell'host del servizio non è valido per questa operazione.
E_INVALIDARG
Uno o più argomenti non sono validi.
WS_E_OPERATION_TIMED_OUT
L'operazione non è stata completata entro il tempo assegnato.
WS_E_OPERATION_ABORTED
L'operazione è stata interrotta.
Altri errori
Questa funzione può restituire altri errori non elencati sopra.

Commenti

WsCloseServiceHost chiude tutti i listener nell'host del servizio. Di conseguenza, nessun nuovo canale viene accettato dal client. Tuttavia, è possibile completare l'I/O in sospeso nei canali già accettati.

Ciò ha implicazioni per gli endpoint configurati per l'esecuzione con associazioni di canale basate su sessione. Se un client ha una sessione aperta con un servizio in tale endpoint, la chiusura non verrà completata fino a quando il client chiude la sessione con il servizio.

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