2010-01-29 68 views

回答

5
procedure TMyDSService.DataSnapServerConnect(DSConnectEventObject: TDSConnectEventObject); 
var 
    Conn: TIdTCPConnection; 
begin 
    Conn := TIdTCPConnection(DSConnectEventObject.ChannelInfo.Id); 
    Trace('Client ' + Conn.Socket.Binding.PeerIP +':' + IntToStr(Conn.Socket.Binding.PeerPort)); 
    Trace('Client info: ' + DSConnectEventObject.ChannelInfo.Info); 
end; 
+0

'DSConnectEventObject.ChannelInfo.Info'总是返回服务器的IP地址,这是一个错误还是我错过了什么? http://db.tt/lmRoqD2 – 2010-08-29 00:33:04

3

您查询Request.RemoteAddr获得附加的客户端的IP地址。

+0

RemoteAddr是TWebRequest的方法,我认为这不是在入店的DataSnap。 – 2010-01-30 11:30:51