TsgcWebSocketClient › Eventos › OnBinary
Se dispara cada vez que el servidor envía un mensaje binario al cliente.
property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object
—
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.
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;