WinHttpWebSocketReceive 函式 (winHTTP.h)

WinHttpWebSocketReceive函式會從 WebSocket 連線接收資料。

語法

WINHTTPAPI DWORD WinHttpWebSocketReceive(
  [in]  HINTERNET                      hWebSocket,
  [out] PVOID                          pvBuffer,
  [in]  DWORD                          dwBufferLength,
  [out] DWORD                          *pdwBytesRead,
  [out] WINHTTP_WEB_SOCKET_BUFFER_TYPE *peBufferType
);

參數

[in] hWebSocket

類型: HINTERNET

WebSocket 的控制碼。

[out] pvBuffer

類型: PVOID

要接收資料的緩衝區指標。

[in] dwBufferLength

類型: DWORD

pvBuffer的長度,以位元組為單位。

[out] pdwBytesRead

類型: DWORD*

DWORD的指標,接收作業結束時從連接讀取的位元組數目。 只有在 WinHttpWebSocketReceive 傳回 NO_ERROR且 控制碼是以同步模式開啟時,才會設定此設定。

[out] peBufferType

類型: WINHTTP_WEB_SOCKET_BUFFER_TYPE*

傳回緩衝區的類型。 只有在 WinHttpWebSocketReceive 傳回 NO_ERROR且 控制碼以同步模式開啟時,才會設定此設定。

傳回值

類型: DWORD

成功NO_ERROR 。 否則為錯誤碼。

描述
ERROR_INVALID_OPERATION
關閉或接收已擱置,或已關閉接收通道。
ERROR_INVALID_PARAMETER
有一個參數無效。
ERROR_WINHTTP_INVALID_SERVER_RESPONSE
從伺服器收到不正確資料。
ERROR_WINHTTP_OPERATION_CANCELLED
作業已取消,因為 已呼叫 WinHttpWebSocketClose 來關閉連線。

規格需求

   
最低支援的用戶端 Windows 8 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
目標平台 Windows
標頭 winHTTP.h
程式庫 WinHTTP.lib
Dll Winhttp.dll