连接到DataSnap Server的设备列表

时间:2018-06-14 10:43:34

标签: android delphi datasnap delphi-10.2-tokyo

有谁知道如何获取连接到DataSnap Server的设备的ID? 我创建了一个使用DataSnap Server的应用程序,我想限制连接并识别连接的设备。

2 个答案:

答案 0 :(得分:0)

在TDSServer组件上,您可以指定OnConnect事件。有一个名为'TDBXClientInfo'的记录类型,您可以从存储在OnConnect事件的TDSConnectEventObject中的'TDBXChannelInfo'中获取该记录类型。该记录包含IP地址。

Mat DeLong有很多关于DataSnap的有用信息:

https://mathewdelong.wordpress.com/2011/09/15/delphilive-2011-recap/

答案 1 :(得分:0)

这可能会有所帮助

procedure TServerContainer1.DSServer1Connect(
  DSConnectEventObject: TDSConnectEventObject);
var
  UserName: String;
  ClientInfo: TDBXClientInfo;
  logmsg: String;
  i: Integer;
begin
  // Note: this event handler gets called directly AFTER authentication
  UserName := TDSSessionManager.GetThreadSession.GetData('UserName');
  ClientInfo := DSConnectEventObject.ChannelInfo.ClientInfo;
  logmsg := Format('User %s connected via %s from IP address %s',
    [UserName, ClientInfo.Protocol, ClientInfo.IpAddress]);
  // ... 
end;