Forum: Netzwerke
Delphi
by Random,
17. Jul 2004
Ich hab's überprüft. Und wie konnte es anders sein, er hatte natürlich Recht. Dank einem tollen logischen Fehler hat die Log-Datei Ergebnisse ausgespuckt die äusserst richtig aussahen. Aber leider nicht mit der Realität übereingestimmt haben :mrgreen:
Ich habe jetzt den User-Objekten ein TCustomWinSocket als Eigenschaft gegeben und bei OnConnect wird dieses auf das übergebene Socket gesetzt....
Forum: Netzwerke
Delphi
by Random,
17. Jul 2004
Solltest du recht haben, dann muss ich meinen Code mal noch intensiver testen, weil dann stimmt noch etwas anderes nicht, das dafür sorgt, das trotz "falscher Theorie" "richtige" Ergebnisse angezeigt werden. :pale:
Forum: Netzwerke
Delphi
by Random,
17. Jul 2004
Ich benutze nicht ActiveConnections als Zähler, sondern einen LongInt, der bei Programstart auf -1 gesetzt wird, und nach jeder Connection um 1 erhöht wird. Demzufolge ist der erste Client 0, der zweite 1, etc. Trennt der erste Client die Verbindung, so ist der zweite immer noch 1.
Forum: Netzwerke
Delphi
by Random,
17. Jul 2004
Man wird's nicht glauben, aber es funktioniert mit dem Counter, da beim Connections Dings die Socketpointer/whatever bei Disconnect durch nil ersetzt werden und damit die Reihenfolge erhalten bleibt.
Nichts gegen deine Idee (welche wesentlich eleganter ist) aber diese Methode hier ist relativ simpel und funktioniert bei mir auch schon.
Forum: Netzwerke
Delphi
by Random,
16. Jul 2004
Zur Komplettierung dieses Topics möchte ich hier noch den Tip eines Bekannten erwähnen -
man lasse einfach einen Zähler mitlaufen, der bei jedem OnConnect um eins steigt. Der Wert des Zählers wird dann mit den Userdaten gespeichert und entspricht später dem "x" in Connections.
Gibts eigentlich irgendwo eine Komplettlösung zu meinem Quest? :gruebel: (nicht antworten, das ist rhetorisch...
Forum: Netzwerke
Delphi
by Random,
15. Jul 2004
Nun gut, dies würde vorraussetzen, dass der Server dem Client sofort antwortet. Es geht mir aber vorwiegend darum, die Clients zuordnen und später, vom Server selbstständig ansprechen zu können.
Beispiel: Der Server merkt sich wann sich ein Client angemeldet hat und schreibt ihm nach einer Stunde "du bist jetzt seit einer Stunde angemeldet."