W komponencie do obsługi GG wykorzystuję TWSocket (z pakietu ICS). Kiedy serwer przesyła pakiet na podstawie jego typu (w nagłówku) jest wykonywana odpowiednia czynność. Ilość danych do odbioru rówznież znajduje się w nagłówku. Odbieram dane procedurą:
GG.Receive(@DaneGg, Naglowek.Dlugosc)
Przy małej długości nie ma problemów, ale przy większych program odbiera tylko część danych (np. przy dlugości pakietu 3000, odbiera tylko 1400).
DaneGG są zdeklarowane nast.:
TDaneGg = packed record
liczby: integer;
Tekst: array[1..4000] of Char;
end;