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 |
---|---|
Il sottosistema di rete non è riuscito. | |
Il parametro lpOutboundDisconnectData non è Null e i dati di disconnessione non sono supportati dal provider di servizi. | |
Il blocco della chiamata a Windows Sockets è in corso oppure il provider di servizi sta ancora elaborando una funzione di callback. | |
Il socket non è connesso (solo socket orientati alla connessione). | |
Il descrittore non è un socket. | |
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 |