TsgcWebSocketClientEventos › OnBinary

OnBinary Evento

Se dispara cada vez que el servidor envía un mensaje binario al cliente.

Sintaxis

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

Valor Predeterminado

Observaciones

OnBinary se genera una vez que la carga útil binaria completa ha sido recibida y almacenada en búfer. El parámetro Data expone los bytes decodificados como un TMemoryStream posicionado en 0; léalo de inmediato porque el stream es propiedad del cliente y queda inválido una vez que el manejador retorna. De forma predeterminada, NotifyEvents es neAsynchronous, por lo que OnBinary se sincroniza con el hilo principal y es seguro actualizar controles de interfaz de usuario desde el manejador; cambie a neNoSync si necesita evitar la sincronización y gestionar la seguridad de hilos usted mismo. Si Options.FragmentedMessages es frgOnlyFragmented, el evento no se activa 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