TsgcWebSocketClient › Événements › OnBinary
Se déclenche chaque fois que le serveur envoie un message binaire au client.
property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object
—
OnBinary est déclenché une fois que la charge utile binaire complète a été reçue et mise en mémoire tampon. Le paramètre Data expose les octets décodés sous forme de TMemoryStream positionné à 0 ; lisez-le immédiatement car le flux appartient au client et devient invalide après le retour du gestionnaire. Par défaut NotifyEvents est neAsynchronous, donc OnBinary est synchronisé avec le thread principal et il est sûr de mettre à jour les contrôles d'interface depuis le gestionnaire ; passer à neNoSync si vous devez éviter la synchronisation et gérer la sécurité des threads vous-même. Si Options.FragmentedMessages est frgOnlyFragmented, l'événement n'est pas déclenché et OnFragmented est utilisé à la place.
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;