Función de devolución de llamada LPWSPSENDDISCONNECT (ws2spi.h)
La función LPWSPSendDisconnect inicia la finalización de la conexión para el socket y envía datos de desconexión.
Sintaxis
LPWSPSENDDISCONNECT Lpwspsenddisconnect;
int Lpwspsenddisconnect(
[in] SOCKET s,
[in] LPWSABUF lpOutboundDisconnectData,
[out] LPINT lpErrno
)
{...}
Parámetros
[in] s
Descriptor que identifica un socket.
[in] lpOutboundDisconnectData
Puntero a los datos de desconexión salientes.
[out] lpErrno
Puntero al código de error.
Valor devuelto
Si no se produce ningún error, LPWSPSendDisconnect devuelve cero. De lo contrario, se devuelve un valor de SOCKET_ERROR y hay disponible un código de error específico en lpErrno.
Código de error | Significado |
---|---|
Error en el subsistema de red. | |
El parámetro lpOutboundDisconnectData no es null y el proveedor de servicios no admite los datos de desconexión. | |
El bloqueo de la llamada a Windows Sockets está en curso o el proveedor de servicios sigue procesando una función de devolución de llamada. | |
El socket no está conectado (solo sockets orientados a la conexión). | |
El descriptor no es un socket. | |
El parámetro lpOutboundDisconnectData no está totalmente incluido en una parte válida del espacio de direcciones del usuario. |
Comentarios
La función LPWSPSendDisconnect se usa en sockets orientados a la conexión para deshabilitar la transmisión e iniciar la finalización de la conexión junto con la transmisión de datos de desconexión, si existe.
Una vez que esta función se haya emitido correctamente, no se permiten los envíos posteriores.
El parámetro lpOutboundDisconnectData , si no es null, apunta a un búfer que contiene los datos de desconexión salientes que se enviarán a la entidad remota.
Tenga en cuenta que LPWSPSendDisconnect no cierra el socket y que los recursos conectados al socket no se liberarán hasta que se invoque LPWSPCloseSocket .
Nota
La función LPWSPSendDisconnect no se bloquea independientemente de la configuración de SO_LINGER en el socket. Un cliente SPI de Windows Sockets no debe depender de poder reutilizar un socket después de que se haya desconectado. En concreto, no se requiere un proveedor de Windows Sockets para admitir el uso de LPWSPConnect en este tipo de socket.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado | ws2spi.h |