ja pisze moj prog GG Lite ale nie udostepniam poki co kodow zrodlowych ale sama obsluga sieci gadu jest w tym wszystkim najprostsza
ja zrobilem tak
tworze nowy watek
w tym watku lacze sie z serwerem gadu-gadu
serwer przysyla odpowiedz wiec wywoluje funkcje DecodeData() i dekoduje to co przyszlo
a przychodzi zawsze z naglowkiem na poczatku wiec
// ----
DecodeData(char* data)
{
// kopiujemy pierwsze osiem bajtow
// pierwsze 4 to typ pakietu
// nastepne 4 to dlugosc reszty (tego co przyszlo oprocz naglowka)
CopyMemory(&header, data, 8) ;
// sprawdzamy co przyszlo
switch (header.type)
{
case GGLOGIN:
{
// kopijemy reszte tego co przyszlo do odpowiedniej struktury
CopyMemory(&gglogin, &data[8], header.size) ;
// i teraz w gglogin mam info jakie przyslal nam serwer
// obliczamy hasz hasla i odsylamy do serwera
....
}
case ...
...
}
}
// ----
wysylanie odbywa sie w takiej samej formie jak odbieranie czyli trzeba wypelnic pola naglowka (typ i rozmiar tego co wysylamy)
wszystkie dane co serwer wysyla i co mozna samemu wyslac jest na stronie z opisem protokolu gadu gadu wiec nie bede tu pisac