TsgcWebSocketHTTPServerEventos › OnBinary

OnBinary Evento

Se activa cada vez que un cliente envía un mensaje binario y el servidor lo recibe.

Sintaxis

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

Valor Predeterminado

Observaciones

OnBinary se genera una vez que se ha recibido y almacenado en búfer una carga útil binaria completa de un cliente WebSocket. El parámetro Data expone los bytes decodificados como un TMemoryStream posicionado en 0; léalo dentro del controlador porque el flujo es propiedad del servidor y deja de ser válido una vez que el controlador retorna. De forma predeterminada, NotifyEvents es neAsynchronous, por lo que OnBinary se sincroniza con el hilo principal y es seguro acceder a los controles de la interfaz de usuario; cambie a neNoSync para despachar en el hilo de conexión cuando el rendimiento sea prioritario. Si Options.FragmentedMessages es frgOnlyFragmented, el evento no se genera y se usa OnFragmented en su lugar.

Ejemplo


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;

Volver a Eventos