Einzelnen Beitrag anzeigen

Benutzerbild von Cyberaxx
Cyberaxx

Registriert seit: 15. Jul 2005
311 Beiträge
 
Delphi XE5 Professional
 
#4

Re: SocketServer & mehrere Clients verwalten

  Alt 16. Aug 2005, 11:43
@Marabu
Wieso muss ich das?

Es ist beabsichtigt das es immer über den Server geht. Der Server übernimmt praktisch die ganze Verwaltungsarbeit.
Es geht ja auch das über den Server mehrere Clients auch untereinander komunizieren können ich will nur nicht den Weg des größten Traffics oder der ganzen adressiererei mit den ID's beim connecten und verlassen des Servers gehen.

Er soll jediglich dem Client PC0078 eine eindeutige ID geben mit der ich immer sagen kann, wenn jemand mit PC0078 reden will, das der Server weiss aha PC0078 hat ID = 1 also

Socket.Connections[1].SendText(S);
@Alzaimar
Klingt soweit nicht schlecht. Es soll sich hierbei aber nicht nur im eine 'chatartige' komunikation handeln, sondern später auch Dateien übertragen werden(Update Funktion von Programmen), da kann es dann auch mal zu einer grossen Datenmenge kommen.
Die Clients hängen auch leider nicht alle an einer Domäne.

Klingt jetzt doof aber auf der Keramik hat man ja bekanntlich die besten Ideen...
Ich weiss auch nicht wieso ich da erst jetzt drauf komme aber ich werds jetzt mal einfügen, vllt. gibt es ja noch eine einfachere Methode, hoff ich...

Wenn eine Nachricht für für den Client 'X' auftaucht, starte ich einfach eine Schleife und lasse ihn suchen
Beim connecten wird der IP ein PC-Name zugeordnet, hier eben PC0078

Delphi-Quellcode:
FOR n := 0 to MaxConnections DO BEGIN
IF Socket.Connections[n].RemoteAddress = Client 'X' Adresse THEN ....
NEXT;
Problem dabei ist wenn mehrere Clients die Selbe IP nutzen gibt es schon Probleme.
Daniel
  Mit Zitat antworten Zitat