Entwickler-Ecke

Internet / Netzwerk - Server/Client Socket Erweitert


Dr.Nimnull - Do 20.10.05 13:44
Titel: Server/Client Socket Erweitert
Hi,
bin gerade dabei einen LAN - Messenger zu basteln !
Habe dazu die Server Socket und die Client Socket Komponente benutzt!

es funzt auch schon in sofern, dass ein Server mit einem Client kommuniziert, dass man Nachrichten verschicken kann u.s.w

Allerdings möchte ich, dass noch mehrere Clients auf den Server zugreifen können bzw. Nachrichten an den Server schicken können und natürlich, dass der Server an alle Clients seine Nachricht schickt.

Gruß

Dr.Nimnull


Jeppen - Do 20.10.05 13:51

Hi,

Im grunde durfte dieser link reichen. Auf dieser Seite habe ich bis jetzt fast immer das gefunden was ich brauche.

http://delphi.about.com/od/networking/l/aa112602a.htm

MfG


Alles eine frage des codes


Dr.Nimnull - Fr 21.10.05 10:55

Hi,

cool thx hat mir geholfen
allerdings habe ich nochwas, was ich da nicht gefunden hab!!!

Kann man (und wenn wie) mit der Server Socket Komponente die Ip´s der aktuell zugreifenden Clients feststellen???

Gruß
Dr.Nimnull


Narses - Fr 21.10.05 11:08

Moin!

Je nach Bedarf:

Delphi-Quelltext
1:
2:
3:
4:
ServerSocket1.Socket.Connections[?].RemoteAddress
ServerSocket1.Socket.Connections[?].RemoteHost
ServerSocket1.Socket.Connections[?].RemotePort
ServerSocket1.Socket.Connections[?].RemoteAddr

Die OH hätte es auch gesagt, einfach mal reinsehen! :wink:

cu
Narses


marconist - So 23.10.05 12:05

Hi Doc

user profile iconDr.Nimnull hat folgendes geschrieben:
Kann man (und wenn wie) mit der Server Socket Komponente die Ip´s der aktuell zugreifenden Clients feststellen???


Wenn du in der onread routine wissen willst, wer gerade was geschickt hat, dann deht das viel einfacher.

socket.remoteaddress und socket.remoteport stehen dort direkt zur Verfügung.

Der Umweg über das connections array ist dort nicht nötig. Dieses Detail ist übrigens in dem Artikel, auf den Jeppens link verweist auch falsch beschrieben. Sonst ist diese Quelle aber ok.

srs marconist