请问如何得到一个连接的对方的IP?用Sock,当客户端有有连接时,在服务端如何得到其IP地址?(50分)

  • 主题发起人 主题发起人 mynlxx
  • 开始时间 开始时间
M

mynlxx

Unregistered / Unconfirmed
GUEST, unregistred user!
在ClientConnect事件中可以得到IP吗?
 
socket.remoteaddress对方的地址
 
socket.remotehost是对方的主机名
 
利用Socket.RemoteAddress就能很容易的得到可以直接用的。
 
procedure TFace.ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
var
LinkIP:TStringList;//连接上来的机器IP地址
I:integer;
s,s1:string;
begin

LinkIP:=TstringLIst.create;
s1:=Socket.RemoteAddress;
for I:=0 to LinkIP.count-1 do begin
if LinkIP.Strings=s1 then exit;
end;
LinkIP.Add(s1);
s:=StatusBar1.Panels.Items[0].text;
StatusBar1.Panels.Items[0].text:=s+s1+#13;
end;
 
多人接受答案了。
 
后退
顶部