delphi - FireMonkey3下检测本地IP地址

标签 delphi firemonkey-fm3 wsastartup

需要在FireMonkey3下检测本地IP地址。在VCL版本中,我一直在使用单元WinSock及其方法

WSAStartup(...)
gethostname(...)

一个限制:不需要使用任何第三方库。我正在将ASTA组件移植到FireMonkey3平台,并且不想在组件之间建立依赖关系。

最佳答案

如果您需要跨平台解决方案,请尝试使用 Indy 和 IdStack 单元中包含的 TIdStack.AddLocalAddressesToList 方法

尝试这个示例

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;

关于delphi - FireMonkey3下检测本地IP地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20568096/

相关文章:

delphi - 当 case 变量未命名时,如何判断变体记录中哪种情况有效,以及如何创建此类记录的值?

ios - Delphi iOS7启动图像问题

c++ - 将 boost::shared_ptr 与 WSACleanup 结合使用

sockets - WSAStartup 和 WSACleanup 的成本是多少?

delphi - 有没有像 PosEx 这样的内置 Delphi 函数可以从字符串的后面找到子字符串?

email - Delphi/Indy 10 - 发送带有附件的文本或 HTML 电子邮件会为文本(正文)本身添加一个附件

delphi - Delphi 中的单元测试 - 你做得怎么样?

delphi - 在 FireMonkey 中更改 TMemo 的字体和背景颜色

linker - WSA启动链接错误