Condividi tramite


Funzione WinHttpWebSocketQueryCloseStatus (winhttp.h)

La funzione WinHttpWebSocketQueryCloseStatus recupera lo stato di chiusura inviato da un server.

Sintassi

WINHTTPAPI DWORD WinHttpWebSocketQueryCloseStatus(
  [in]  HINTERNET hWebSocket,
  [out] USHORT    *pusStatus,
  [out] PVOID     pvReason,
  [in]  DWORD     dwReasonLength,
  [out] DWORD     *pdwReasonLengthConsumed
);

Parametri

[in] hWebSocket

Tipo: SUBNETNET

Gestire in un WebSocket

[out] pusStatus

Tipo: USHORT*

Puntatore a un codice di stato di chiusura che verrà compilato al momento della restituzione. Per i valori possibili, vedere WINHTTP_WEB_SOCKET_CLOSE_STATUS.

[out] pvReason

Tipo: PVOID

Puntatore a un buffer che riceverà un motivo di chiusura al momento della restituzione.

[in] dwReasonLength

Tipo: DWORD

Lunghezza in byte del buffer pvReason .

[out] pdwReasonLengthConsumed

Tipo: DWORD*

Numero di byte utilizzati. Se pvReason è NULL e dwReasonLength è 0, pdwReasonLengthConsumed conterrà le dimensioni del buffer che devono essere allocate dall'applicazione chiamante.

Valore restituito

Tipo: DWORD

NO_ERROR al successo. In caso contrario, un codice di errore.

Descrizione
ERROR_INSUFFICIENT_BUFFER
Non c'è spazio sufficiente in pvReason per scrivere l'intero motivo vicino.
ERROR_INVALID_OPERATION
Non è stato ancora ricevuto alcun frame di chiusura.
ERROR_INVALID_PARAMETER
Un parametro non è valido.

Commenti

Chiama WinHttpWebSocketQueryCloseStatus solo dopo che WinHttpWebSocketClose ha esito positivo o se WinHttpWebSocketReceive restituisce WINHTTP_WEB_SOCKET_CLOSE_BUFFER_TYPE.

pdwReasonLengthConsumed non sarà mai maggiore di 123, quindi l'allocazione del buffer con almeno 123 garantirà che ERROR_INSUFFICIENT_BUFFER non verrà mai restituito.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 [solo app desktop]
Server minimo supportato Windows Server 2012 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winhttp.h
Libreria Winhttp.lib
DLL Winhttp.dll

Vedi anche

WINHTTP_WEB_SOCKET_CLOSE_STATUS

WinHttpWebSocketClose

WinHttpWebSocketReceive