FireMonkey3下需要检测本地IP地址。在 VCL 版本中,我一直在使用带有方法的单元WinSock
WSAStartup(...)
gethostname(...)
一个限制:不需要使用任何第三方库。我正在将 ASTA 组件移植到 FireMonkey3 平台,并且不想在组件之间建立依赖关系。
FireMonkey3下需要检测本地IP地址。在 VCL 版本中,我一直在使用带有方法的单元WinSock
WSAStartup(...)
gethostname(...)
一个限制:不需要使用任何第三方库。我正在将 ASTA 组件移植到 FireMonkey3 平台,并且不想在组件之间建立依赖关系。
如果您需要跨平台解决方案,请尝试使用 Indy 和单元TIdStack.AddLocalAddressesToList
中包含的方法IdStack
试试这个样本
var
AAddresses: TStrings;
begin
AAddresses := TStringList.Create;
try
TIdStack.IncUsage;
try
GStack.AddLocalAddressesToList(AAddresses);
finally
TIdStack.DecUsage;
end;
if AAddresses.Count > 0 then
//do something
finally
AAddresses.Free;
end;
end;