首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何与Indy一起获得适配器名称?

如何与Indy一起获得适配器名称?
EN

Stack Overflow用户
提问于 2014-03-27 11:40:21
回答 2查看 905关注 0票数 0

我可以使用indy使用以下代码获取所有本地IP地址:

代码语言:javascript
复制
uses IdStack;

var
  IPs: TStringList;
begin
  IPs := TStringList.Create;
  try
    GStack.AddLocalAddressesToList(IPs);
    listbox_localIPs.Items.Assign(IPs);  //My listbox
  finally
    IPs.Free;
  end;
end;

如何为我在Indy中找到的每个IP获取适配器名称

EN

回答 2

Stack Overflow用户

发布于 2014-03-27 15:20:32

印第没有提供这样的信息。您必须使用WinApi (GetAdaptersInfoGetAdaptersAddresses)或WMI (Win32_NetworkAdapter)。

票数 3
EN

Stack Overflow用户

发布于 2014-03-27 18:35:38

Indy主要是一个不公开适配器信息的标准套接字API的包装器。AddLocalAddressesToList()使用特定于平台的API获取本地IP,其中一些API可能报告适配器名称(或通过其他API公开查找这些名称的方式),但AddLocalAddressesToList()只是用IP地址字符串填充TStrings,因此即使它想报告适配器名称也无法报告。

尽管如此, has recently been deprecated支持一种新的GetLocalAddressList()方法,该方法返回包含附加信息(IP版本、子网掩码)的TIdStackLocalAddress-derived对象集合。因此,将来的版本可能添加适配器名称是可行的,但这仍然是在特定平台的基础上实现的,因此可能不会在所有平台上都可用。Indy本身不需要适配器名称,所以最好直接使用特定于平台的API来获取所需的任何适配器信息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22686527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档