Forum: Netzwerke
Delphi
by Delphi-Narr,
25. Mär 2015
So, mit ein paar Anpassungen hat es dann funktioniert. Der disconnect wird in der OnExecute korrekt durchgeführt. Nur der Client kriegt es jetzt nicht immer mit :D
Aber in den meisten Fällen schon.
Leider funktioniert auch CheckForDisconnect nicht korrekt. Läuft zwischen Windows und Linux mit dem Setup wohl nur manuell...
Danke auf jeden Fall für die Hilfe!
Forum: Netzwerke
Delphi
by Delphi-Narr,
24. Mär 2015
Unter Windows habe ich das nicht getestet, unter Linux scheint der Eintrag auf jeden Fall nicht korrekt gelöscht werden.
Das OnExecute wird doch nur ausgeführt, wenn was vom Client kommt oder nicht? Wenn also kein Client mehr irgendetwas auslöst - weil die Verbindung getrennt wurde - kann der disconnect dann überhaupt erkannt werden?
Das Problem ist ja nicht, den Context zu untersuchen, sondern...
Forum: Netzwerke
Delphi
by Delphi-Narr,
24. Mär 2015
Habe hierzu nochmal eine Frage:
Ich habe jetzt den Heartbeat eingebaut, der Client schickt in einem Intervall die Heartbeats und der Server antwortet.
In der ContextClass des Servers werden die MacAdresse und der Zeitpunkt des letzten Heartbeats des Clients gespeichert. In festen Intervallen räumt der Server dann auf, d.h. er durchläuft die Liste der verbundenen Clients und alle, die zu lange...
Forum: Netzwerke
Delphi
by Delphi-Narr,
20. Mär 2015
Ja das werde ich wohl tun ;)
Heartbeats werden auch verschickt, nur nicht so oft. Das werde ich dann mal anpassen.
Komisch, dass das bei Windows-"interner" Kommunikation die Abfrage das richtige Resultat lieferte.
Forum: Netzwerke
Delphi
by Delphi-Narr,
20. Mär 2015
Der Client ist in diesem Fall nicht Linux kompatibel und lässt sich auch nicht so leicht portieren...
Laut nmap mit watch ist der Port die ganze Zeit offen. Ich denke, dass der Client die "connected"-Abfrage immer zu false auswertet... Eine Disconnect Fehlermeldung kommt nicht, nur alle paar Sekunden die Verbunden-Meldung.
Forum: Netzwerke
Delphi
by Delphi-Narr,
19. Mär 2015
Ah, ja das hatte ich mir schon gedacht. Unter Lazarus habe ich das ganze aber nicht hinbekommen, da alles, was ich dazu gefunden habe auf Windows Bibliotheken basiert.
Ich müsste also in der Loop die Messages manuell abfragen, wie könnte das unter Linux denn gehen?
Wenn connected noch true liefert, schickt der Client die Daten an den Server und erhält eine Bestätigung. Aber selbst, wenn die...