WebSocketGetAction 함수(websocket.h)
WebSocketGetAction 함수는 WebSocketSend, WebSocketReceive 또는 WebSocketCompleteAction 호출에서 작업을 반환합니다.
구문
HRESULT WebSocketGetAction(
[in] WEB_SOCKET_HANDLE hWebSocket,
[in] WEB_SOCKET_ACTION_QUEUE eActionQueue,
[in, out] WEB_SOCKET_BUFFER *pDataBuffers,
[in, out] ULONG *pulDataBufferCount,
[out] WEB_SOCKET_ACTION *pAction,
[out] WEB_SOCKET_BUFFER_TYPE *pBufferType,
[out, optional] PVOID *pvApplicationContext,
[out] PVOID *pvActionContext
);
매개 변수
[in] hWebSocket
WebSocketCreateClientHandle 또는 WebSocketCreateServerHandle에 대한 이전 호출에서 반환된 WebSocket 세션 핸들입니다.
[in] eActionQueue
보내기 큐, 수신 큐 또는 둘 다를 쿼리할지 여부를 지정하는 열거형입니다.
[in, out] pDataBuffers
형식: WEB_SOCKET_BUFFER*
WebSocket 버퍼 데이터를 포함하는 WEB_SOCKET_BUFFER 구조체의 배열에 대한 포인터입니다.
[in, out] pulDataBufferCount
형식: ULONG*
입력 시 pDataBuffers의 요소 수를 지정하는 값에 대한 포인터입니다. 성공적인 출력에서 pDataBuffers에서 실제로 반환된 요소의 수입니다.
[out] pAction
형식: WEB_SOCKET_ACTION*
성공적으로 출력되면 쿼리에서 큐로 반환되는 작업을 지정하는 WEB_SOCKET_ACTION 열거형에 대한 포인터가 eActionQueue에서 정의됩니다.
[out] pBufferType
성공적인 출력에서 pDataBuffers에 반환된 웹 소켓 버퍼 데이터의 형식을 지정하는 WEB_SOCKET_BUFFER_TYPE 열거형에 대한 포인터입니다.
[out, optional] pvApplicationContext
형식: PVOID*
성공적인 출력에서 애플리케이션 컨텍스트 핸들에 대한 포인터입니다. 여기서 반환된 컨텍스트는 처음에 WebSocketSend 또는 WebSocketReceive에 전달되었습니다. pAction이 WEB_SOCKET_NO_ACTION 경우 pvApplicationContext가 설정되지 않거나 ping 수신에 대한 응답으로 탁구를 보낼 때 WEB_SOCKET_SEND_TO_NETWORK_ACTION.
[out] pvActionContext
형식: PVOID*
성공적인 출력에서 작업 컨텍스트 핸들에 대한 포인터입니다. 이 핸들은 후속 호출 WebSocketCompleteAction에 전달됩니다.
반환 값
형식: HRESULT
함수가 성공하면 S_OK를 반환합니다.
함수가 실패하면 WinError.h에 정의된 다음 또는 시스템 오류 코드 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
프로토콜 데이터의 형식이 잘못되었습니다. 수신 작업에 대해서만 반환됩니다. |
|
프로토콜이 잘못된 작업을 수행했습니다. 수신 작업에 대해서만 반환됩니다. |
설명
WebSocketGetAction에 대한 각 호출은 WebSocketCompleteAction 호출과 페어링되어야 합니다.
WebSocketCompleteAction의 ulBytesTransferred 매개 변수가 WEB_SOCKET_SEND_TO_NETWORK_ACTION 작업에 대한 모든 버퍼 길이의 합계와 다르거나 WEB_SOCKET_RECEIVE_FROM_NETWORK_ACTION 작업에 대해 0이면 WebSocket 애플리케이션은 요청된 모든 데이터를 보내거나 받지 않습니다.
WebSocketGetAction 은 pAction으로 반환됩니다.
- WebSocketSend에서 큐에 대기하는 작업이 완료되면 WEB_SOCKET_INDICATE_SEND_COMPLETE_ACTION.
- WebSocketReceive에서 큐에 대기하는 작업이 완료되면 WEB_SOCKET_INDICATE_RECEIVE_COMPLETE_ACTION.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | websocket.h |
라이브러리 | Websocket.lib |
DLL | Websocket.dll |