Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi TServerSocket Connections[x] (https://www.delphipraxis.net/25911-tserversocket-connections%5Bx%5D.html)

Muetze1 17. Jul 2004 03:14

Re: TServerSocket Connections[x]
 
Moin!

Zitat:

Zitat von Random
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.

Nein, das kann nicht sein. Aus dem einfachen Grund, weil man die Property ActiveConnections hat und diese immer angibt wieviele Connections[] Einträge gültig sind - und das immer von 0 bis ActiveConnections-1. Daher sollte diese Methode nicht funktionieren, da die Indizies aufrücken.

MfG
Muetze1

Random 17. Jul 2004 12:06

Re: TServerSocket Connections[x]
 
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.

Muetze1 17. Jul 2004 13:52

Re: TServerSocket Connections[x]
 
Moin!

Zitat:

Zitat von Random
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.

Ich benutze ActiveConnections auch nicht als Zähler sondern als "Anzahl der Connections" - Wert. Mit diesem kann ich das Connections Array iteriieren. Und auch dein Weg bringt kein Unterschied zu meiner Begründung: Wenn du zwei Connections hast und sich die erste trennt (Index 0), dann wird die zweite Connection automatisch zur ersten auf Index 0 - und hat nicht mehr den Index 1 im Connections[]-Array.

MfG
Muetze1

Random 17. Jul 2004 15:16

Re: TServerSocket Connections[x]
 
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:

supermuckl 17. Jul 2004 17:00

Re: TServerSocket Connections[x]
 
ich glaub eher das es ein falsches ergebnis ist und du denkst nur das der richtige client socket am werk ist ?!

Random 17. Jul 2004 20:48

Re: TServerSocket Connections[x]
 
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. Funktioniert augenscheinlich wunderbar :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:21 Uhr.
Seite 2 von 2     12   

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