Кто-нибудь знает, как получить идентификаторы устройств, подключенных к DataSnap Server? Я сделал приложение, которое использует DataSnap Server, и я хочу ограничить соединение и идентифицировать подключенные устройства.
В компоненте TDSServer вы можете указать событие OnConnect. Существует тип записи «TDBXClientInfo», который можно получить из «TDBXChannelInfo», хранящегося в объекте TDSConnectEventObject события OnConnect. Эта запись содержит IP-адрес.
У Мэта ДеЛонга есть много полезной информации о DataSnap:
https://mathewdelong.wordpress.com/2011/09/15/delphilive-2011-recap/
Это может помочь
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;
Пожалуйста, предоставьте свои закодированные попытки решить эту проблему самостоятельно.