Funzione di callback LPWSPSENDDISCONNECT (ws2spi.h)

La funzione LPWSPSendDisconnect avvia la terminazione della connessione per il socket e invia i dati di disconnessione.

Sintassi

LPWSPSENDDISCONNECT Lpwspsenddisconnect;

int Lpwspsenddisconnect(
  [in]  SOCKET s,
  [in]  LPWSABUF lpOutboundDisconnectData,
  [out] LPINT lpErrno
)
{...}

Parametri

[in] s

Descrittore che identifica un socket.

[in] lpOutboundDisconnectData

Puntatore ai dati di disconnessione in uscita.

[out] lpErrno

Puntatore al codice di errore.

Valore restituito

Se non si verifica alcun errore, LPWSPSendDisconnect restituisce zero. In caso contrario, viene restituito un valore di SOCKET_ERROR e in lpErrno è disponibile un codice di errore specifico.

Codice di errore Significato
WSAENETDOWN
Il sottosistema di rete non è riuscito.
WSAENOPROTOOPT
Il parametro lpOutboundDisconnectData non è Null e i dati di disconnessione non sono supportati dal provider di servizi.
WSAEINPROGRESS
Il blocco della chiamata a Windows Sockets è in corso oppure il provider di servizi sta ancora elaborando una funzione di callback.
WSAENOTCONN
Il socket non è connesso (solo socket orientati alla connessione).
WSAENOTSOCK
Il descrittore non è un socket.
WSAEFAULT
Il parametro lpOutboundDisconnectData non è totalmente contenuto in una parte valida dello spazio indirizzi utente.

Commenti

La funzione LPWSPSendDisconnect viene usata nei socket orientati alla connessione per disabilitare la trasmissione e per avviare la terminazione della connessione insieme alla trasmissione di dati di disconnessione, se presenti.

Dopo che questa funzione è stata rilasciata correttamente, gli invii successivi non sono consentiti.

Il parametro lpOutboundDisconnectData , se non null, punta a un buffer contenente i dati di disconnessione in uscita da inviare all'entità remota.

Si noti che LPWSPSendDisconnect non chiude il socket e che le risorse collegate al socket non verranno liberate finché non viene richiamato LPWSPCloseSocket .

Nota

La funzione LPWSPSendDisconnect non si blocca indipendentemente dall'impostazione SO_LINGER sul socket. Un client SPI Windows Sockets non deve basarsi sulla possibilità di riutilizzare un socket dopo che è stato disconnesso. In particolare, non è necessario un provider Windows Sockets per supportare l'uso di LPWSPConnect su un socket di questo tipo.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Intestazione ws2spi.h

Vedi anche

LPWSPConnect

LPWSPSocket