![]() |
Wie krieg ich die Nummer der Verbindung des Clients raus?
Also hoffe der Titel beschreibt meine Frage einigermaßén sinnvoll!
Ich möchte auf ClientSeite rauskriegen der wievielte Client er ist der zum Server verbunden ist! Ich benutze TServer und TClientSocket-Komponenten. Um das nochmal zu verdeutlichen, der Server kann ja mit folgender Zeile Nachrichten an dden Client schicken.
Delphi-Quellcode:
Ich möchte nun auf Seite des Clients rausfinden, welchen Wert das i haben müsste, damit die Nachricht an ihn geht.
Server.Socket.Connections[i].SendText('bla');
Hoffe ihr versteht was ich meine! |
Re: Wie krieg ich die Nummer der Verbindung des Clients raus
Hallo .Hühnchen
sende dem Client die Nummer doch beim verbinden zu !? also etwa
Delphi-Quellcode:
oder hab ich da was falsch verstanden ???Server.Socket.Connections[i].SendText('ClientNummer='+IntToStr(i)); |
Re: Wie krieg ich die Nummer der Verbindung des Clients raus
Ne, das hab ich bisher auch so gemacht, aber dachte da gibts vll ne bessere/schönere Möglichkeit. Haette ja sein koennen, das der Client die Nummer weiss ;-)
Ok dankeschoen! |
Re: Wie krieg ich die Nummer der Verbindung des Clients raus
Was ich bei dem allen nicht verstehe: wozu sollte den Client diese Zahl interessieren? Das interessiert den Client doch nicht die Bohne. Schon allein da sich diese Nummer mit jedem neuen Client bzw. geschlossenen Client ändert, schliesslich rutschen die Clients nach in dem Connections[] Array. Von daher: Wozu braucht der Client diese Nummer?
|
Re: Wie krieg ich die Nummer der Verbindung des Clients raus
Will damit bei einem rundenbasierten Spiel ueberpruefen, ob die Nummer des aktiven Spielers mit der Nummer der Verbindung übereinstimmt ;-)
|
Re: Wie krieg ich die Nummer der Verbindung des Clients raus
Ja - und?
Ich sehe das so: 1. Client sind die Spieler 2. Server hat die Game-Verwaltung 3. Server schickt Nachricht an den Client, welcher aktiv ist und machen darf. Wenn der Client fertig ist, schickt er sein Ergebnis zurück (oder schon zwischendurch und am Ende nur Bestätigung der Runde). 4. Jeder Client der keine Anfrage etwas zu machen bekommt, ist nicht aktiv. Die Änderung des aktiven Clients wird einfach an die anderen als Aktionen weitergeleitet. Damit der aktive Client die nicht bekommt, kannst du einfach Connections[] und den übergeben Socket vergleichen und nur bei Ungleichheit versenden. Somit sehe ich immernoch keinen Grund, warum der Client diese Nummer kennen muss. Wo steckt mein Denkfehler? |
Re: Wie krieg ich die Nummer der Verbindung des Clients raus
so kann man natuerlich auch machen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:57 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