我正在尝试使用以下代码通过
DSServer
的onconnect
事件获得客户端的IP地址和其他客户端信息。但我的问题是,每次DSConnectEventObject.ChannelInfo
都为nil
。此外,我无法解析IP地址。请帮助我,谢谢。procedure TWebModule1.DSServer1Connect(DSConnectEventObject: TDSConnectEventObject);
var
ci: TDBXClientInfo;
begin
ci := DSConnectEventObject.ChannelInfo.ClientInfo;
AddLog(Format('Client %s Connected IP: %s, Port: %s',
[ci.Protocol, ci.IpAddress, ci.ClientPort])
);
end;
DSConnectEventObject.ChannelInfo
为空,所以您的第一个if Assigned()
将返回false,因此代码的其余部分将无关紧要。 - Remy LebeauDSConnectEventobject.ChannelInfo
时,并不总是会出现nil。 - Eden Wu