if_nametoindex 函数 (netioapi.h)
if_nametoindex 函数将网络接口的 ANSI 接口名称转换为接口的本地索引。
语法
IPHLPAPI_DLL_LINKAGE NET_IFINDEX NETIOAPI_API_ if_nametoindex(
[in] PCSTR InterfaceName
);
参数
[in] InterfaceName
指向包含接口名称的 以 NULL 结尾的 ANSI 字符串的指针。
返回值
成功后, if_nametoindex 返回本地接口索引。 失败时,返回零。
注解
if_nametoindex函数在 Windows Vista 及更高版本上可用。
if_nametoindex 函数将接口名称映射到其相应的索引中。 此函数设计为 IPv6 的基本套接字扩展的一部分,如 RFC 2553 中的 IETF 中所述。 有关详细信息,请参阅 http://www.ietf.org/rfc/rfc2553.txt。
实现 if_nametoindex 函数是为了在 Unix 环境中移植应用程序,但 ConvertInterface 函数是首选函数。 if_nametoindex 函数可以替换为对 ConvertInterfaceNameToLuidA 函数的调用,以将 ANSI 接口名称转换为NET_LUID然后调用 ConvertInterfaceLuidToIndex 以将NET_LUID转换为本地接口索引。
如果 if_nametoindex 函数失败并返回零,则无法确定错误代码。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | netioapi.h (包括 Iphlpapi.h) |
Library | Iphlpapi.lib |
DLL | Iphlpapi.dll |