TsgcWebSocketClient › Gebeurtenissen › OnBinary
Wordt geactiveerd telkens wanneer de server een binair bericht naar de client stuurt.
__property TsgcWSBinaryEvent OnBinary;
// typedef void __fastcall (__closure *TsgcWSBinaryEvent)(TsgcWSConnection * Connection, const TMemoryStream * Data);
—
OnBinary wordt geactiveerd zodra de volledige binaire payload is ontvangen en gebufferd. De parameter Data stelt de gedecodeerde bytes beschikbaar als een TMemoryStream gepositioneerd op 0; lees deze onmiddellijk omdat de stream eigendom is van de client en ongeldig wordt nadat de handler is teruggekeerd. Standaard is NotifyEvents neAsynchronous, zodat OnBinary gesynchroniseerd is met de hoofdthread en het veilig is om UI-besturingselementen vanuit de handler bij te werken; schakel over naar neNoSync als u synchronisatie wilt vermijden en draadveiligheid zelf wilt afhandelen. Als Options.FragmentedMessages frgOnlyFragmented is, wordt de gebeurtenis niet geactiveerd en wordt in plaats daarvan OnFragmented gebruikt.
void OnBinary(TsgcWSConnection *Connection, const TMemoryStream *Data)
{
TBitmap *oBitmap = new TBitmap();
oBitmap->LoadFromStream(Data);
Image1->Picture->Assign(oBitmap);
delete oBitmap;
}