TsgcWebSocketServer_HTTPAPIEventos › OnBinary

OnBinary Event

Disparado toda vez que um cliente envia uma mensagem binária e ela é recebida pelo servidor.

Sintaxe

property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object

Valor Padrão

Observações

OnBinary é gerado assim que um payload binário completo foi recebido e armazenado em buffer de um cliente. O parâmetro Data expõe os bytes decodificados como um TMemoryStream posicionado em 0; leia-o dentro do manipulador, pois o stream pertence ao servidor e se torna inválido após o retorno do manipulador. O evento roda na thread de trabalho IOCP que tratou o frame WebSocket HTTP.SYS recebido, portanto faça o marshal para a thread principal antes de tocar em controles de UI. Se Options.FragmentedMessages for frgOnlyFragmented, o evento não é gerado e OnFragmented é usado em vez disso.

Exemplo


procedure OnBinary(Connection: TsgcWSConnection; const Data: TMemoryStream);
var
  oBitmap: TBitmap;
begin
  oBitmap := TBitmap.Create;
  try
    oBitmap.LoadFromStream(Data);
    Image1.Picture.Assign(oBitmap);
  finally
    FreeAndNil(oBitmap);
  end;
end;

Voltar para Eventos