The WinHttpWebSocketShutdown function sends a close frame to a WebSocket server to close the send channel, but leaves the receive channel open.
WINHTTPAPI DWORD WinHttpWebSocketShutdown( HINTERNET hWebSocket, USHORT usStatus, PVOID pvReason, DWORD dwReasonLength );
Handle to a WebSocket.
A close status code. See WINHTTP_WEB_SOCKET_CLOSE_STATUS for possible values.
A detailed reason for the close.
The length of pvReason, in bytes.
If pvReason is NULL, this must be 0. This value must be within the range of 0 to 123.
With the following exception, all error codes indicate that the underlying TCP connection has been aborted.
||The operation will complete asynchronously.|
WinHttpWebSocketShutdown sends a close frame and prevents additional data from being sent over the WebSocket connection. It does not close the receive channel. Use WinHttpWebSocketClose when you want to completely close the connection and prevent any subsequent receive operations.
The application is responsible for receiving the close frame from the server (through regular receive operations).
After WinHttpWebSocketShutdown is called, the application can call WinHttpWebSocketClose if it does not want to receive a close frame on its own and delegate it to the stack.
|Minimum supported client||Windows 8 [desktop apps only]|
|Minimum supported server||Windows Server 2012 [desktop apps only]|