2012-04-03 7 views
2

Delphi XE2, ich denke, das ist Indy 10 (?).Wie bekomme ich die IP-Adresse, die einen Befehl an einen TIdCommand gesendet hat?

Ein Server, 10 Clients. Ich möchte die IP-Adresse des Clients erhalten, der jeden Befehl sendet.

Btw, das ist ein geschlossenes LAN und ich bekomme die statischen IP Adressen (192.168.1.xxx) zu vergeben.

Ich nehme an, ich könnte eine .INI-Datei auf jeder Maschine geben, sie eine eindeutige Nummer geben und sie als Präfix jedem Befehl übergeben (oder sogar ihre eigene IP-Adresse als Präfix übergeben).

Aber ich hoffe, dass ich einfach auf einige Daten des TIdCommand zugreifen kann, um die IP-Adresse des Absenders zu bekommen ...?

Antwort

6

Verwenden Sie die TIdCommand.Context.Binding.PeerIP-Eigenschaft, um die Client-IP zu erhalten.

+0

+ 1 und die Antwort. Ich habe getogelt, aber wahrscheinlich Indy 9 bekommen, was TIdCommand.Thread.Connection.Socket.Binding.PeerIP; Thailändische Antwort kompiliert für mich. Danke – Mawg

+0

Ja, 'TIdCommand.Thread' ist für Indy 9, nicht 10. –

Verwandte Themen