Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi SocketServer - SocketClient problem (https://www.delphipraxis.net/26323-socketserver-socketclient-problem.html)

XHelp 22. Jul 2004 01:22


SocketServer - SocketClient problem
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Ich habe eine SocketServer-SocketClient anwendung (internetzähler für einen computerclub).
An dem hauptrechner wird der Server installiert und an den benutzer pcs wird dann der client installiert. Wenn die benutzer pcs eingeschaltet werden verbinden sie sich mit dem server.

Wenn man aber den benutzer pc runterfährt, kriegt der server 2 fehlermeldungen, siehe anhang (erst die 1 und nach ein paar sekunden die 2).
Bei dem client steht OnFormDestroy:
Delphi-Quellcode:
procedure TForm1.FormDestroy(Sender: TObject);
begin
  CS1.Active:=false;
end;
Das muss doch eigentlich klappen. Bei anderen Socket programmen hat es bei mir auch geklappt.
Weiss jemand woran es liegt und wie man das weg machen kann?

Sharky 22. Jul 2004 07:13

Re: SocketServer - SocketClient problem
 
Hai XHelp,

kann es sein das Windows zum dem Zeitpunkt als dein Programm beendet wird schon die Netzwerkverbindung getrennt hat?
Du solltest eventuell auf den ShutDown von Windows reagieren. Suche mal hier im Forum. Ich glaube dazu gab es mal einen Thread.

Struwl 22. Jul 2004 11:29

Re: SocketServer - SocketClient problem
 
Es liegt daran, dass du den Server beendest ohne den Clienten zu sagen, dass er beendet wird.

Schick einfach einen BEfehl an alle Clienten, damit diese sich vom Server trennen bevor dieser Beendet wird und die Sache dürfte erledigt sein.
Und ich würde das eher in das OnClose-Ereignis setzten als in das OnDestroy .. aber davon hab ich keine Ahnung :)

Manzoni 22. Jul 2004 11:36

Re: SocketServer - SocketClient problem
 
probier dochmal:
Delphi-Quellcode:
CS1.close;
und setzt das schließen in das close-event.
Nachtrag: hab grade gelesen, dass Struwl das auch schon vorgeschlagen hat.

Struwl 22. Jul 2004 11:43

Re: SocketServer - SocketClient problem
 
Delphi-Quellcode:
CS1.Close;
ist das selbe wie

Delphi-Quellcode:
CS1.Active:=false;


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz