Skocz do zawartości

[INDY] Klient-Serwer (obsługa wszystkich klientów)


Adam Koziolek

Polecane posty

Witam

Mam dwie aplikacje klient i serwer zbudowane w oparciu o komponenty Indy 9 (IdTCPClient i Server), klient napisany jest raczej dobrze (raczej ; ] ), gorzej z serwerem, który nie obsługuje wielu klientów (z jednym klientem sobie radzi) kombinowałem z AThread.Destroy (w zdarzeniu OnExecute), wówczas rzeczywiście na każdym kliencie wyświetli się komunikat, ale potem taki klient się sypie. Oto kod klienta i serwera:


KLIENT:

[delphi][/delphi]

Ogólnie założenia są takie:
1). Do serwera łączy się wielu klientów jednocześnie;
2) Po połączeniu klienta do serwera, wszyscy klienci w tle cały czas nasłuchują "poleceń" wydanych z serwera (nasłuchują w tle za pomoca timera), jeżeli serwer wyda "komunikat" o okreslonej treści (w przykładzie wyśle tekst call) wówczas klient wykona coś tam (w przykładzie po naciśnięciu buttona na serwerze na wszystkich klientach ma pojawić się komunikat);

Próbuje próbuje i ciągle się krzaczy (działa tylko z jednym klientem, a zwieloma nie)

Bardzo proszę o pomoc, wskazówki, tuning mojego kodu, aby sparwnie obsłużyć połączenie klient-serwer (a właściwie klienci-serwer).

Z góry Dzięx
Link do komentarza
Udostępnij na innych stronach

Z Indy Demos (Chat): [code=Delphi] List := tcpServer.Threads.LockList;
try
for Count H[LHBCBYYXY
FV56VE6ććV7Fw&FTĆ6rW6W@DEQĄĄ1%Ńm
ŃtMŃ4(4(ąą4(tcpServer.Threads.UnlockList;
end;
[/code]

A do obsługi socketów wolę TServerSocket i TClientSocket z ScktComp (chyba w standardzie)

҉

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...