次の方法で共有


WinHttpWebSocketClose 関数 (winhttp.h)

WinHttpWebSocketClose 関数は、WebSocket 接続を閉じます。

構文

WINHTTPAPI DWORD WinHttpWebSocketClose(
  [in]           HINTERNET hWebSocket,
  [in]           USHORT    usStatus,
  [in, optional] PVOID     pvReason,
  [in]           DWORD     dwReasonLength
);

パラメーター

[in] hWebSocket

種類: HINTERNET

WebSocket へのハンドル。

メモWinHttpWebSocketClose では、このハンドルは閉じられません。 ハンドルを閉じるには、不要になったら、hWebSocketWinHttpCloseHandle を呼び出します。

 

[in] usStatus

種類: USHORT

終了状態コード。 使用可能な値については 、「WINHTTP_WEB_SOCKET_CLOSE_STATUS 」を参照してください。

[in, optional] pvReason

種類: PVOID

クローズの詳細な理由。

[in] dwReasonLength

型: DWORD

pvReason の長さ (バイト単位)。

pvReason が NULL の場合、これは 0 である必要があります。 この値は、0 ~ 123 の範囲内である必要があります。

戻り値

型: DWORD

次の例外では、すべてのエラー コードは、基になる TCP 接続が中止されたことを示します。

説明
ERROR_INVALID_OPERATION
クローズまたは送信が保留中です。
ERROR_INVALID_PARAMETER
パラメーターが無効です。
ERROR_INVALID_SERVER_RESPONSE
サーバーから無効なデータが受信されました。

注釈

WinHttpWebSocketClose は、WebSocket 接続を完全に閉じます。 受信チャネルを開いたまま送信チャネルを閉じるには、 WinHttpWebSocketShutdown を使用します。

通常の受信操作中に、閉じるフレームを受け取ることができます。 この場合、 WinHttpWebSocketClose も閉じるフレームを送信します。

閉じるタイマーは、プロパティ WINHTTP_OPTION_WEB_SOCKET_CLOSE_TIMEOUTで設定できます。 既定は 10 秒です。

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winhttp.h
Library Winhttp.lib
[DLL] Winhttp.dll

こちらもご覧ください

WINHTTP_WEB_SOCKET_CLOSE_STATUS

WinHttpCloseHandle

WinHttpWebSocketShutdown