TsgcWebSocketServer_HTTPAPI이벤트 › OnBinary

OnBinary 이벤트

클라이언트가 바이너리 메시지를 보내고 서버가 이를 수신할 때마다 발생합니다.

구문

__property TsgcWSBinaryEvent OnBinary;
// typedef void __fastcall (__closure *TsgcWSBinaryEvent)(TsgcWSConnection * Connection, const TMemoryStream * Data);

기본값

설명

OnBinary는 클라이언트로부터 전체 바이너리 페이로드가 수신되어 버퍼링되면 발생합니다. Data 매개변수는 위치 0에 있는 TMemoryStream으로 디코딩된 바이트를 노출합니다. 스트림은 서버가 소유하며 핸들러가 반환된 후 무효화되므로 핸들러 내에서 읽으십시오. 이 이벤트는 수신 HTTP.SYS WebSocket 프레임을 처리한 IOCP 작업자 스레드에서 실행되므로, UI 컨트롤을 다루기 전에 메인 스레드로 마샬링하십시오. Options.FragmentedMessages가 frgOnlyFragmented이면 이 이벤트는 발생하지 않고 대신 OnFragmented가 사용됩니다.

예제


void OnBinary(TsgcWSConnection *Connection, const TMemoryStream *Data)
{
  TBitmap *oBitmap = new TBitmap();
  oBitmap->LoadFromStream(Data);
  Image1->Picture->Assign(oBitmap);
  delete oBitmap;
}

이벤트로 돌아가기