GetIfEntry2 函数

GetIfEntry2 函数检索本地计算机上的指定接口的信息。

重要

对于驱动程序开发人员,建议尽可能将 GetIfEntry2Ex 与 MibIfEntryNormalWithoutStatistics 配合使用,以避免在为 NDIS OID 提供服务时出现死锁。

语法

NETIOAPI_API GetIfEntry2(
  _Inout_ PMIB_IF_ROW2 Row
);

参数

  • Row [in, out]
    指向 MIB_IF_ROW2 结构的指针,该结构在成功返回时接收本地计算机上接口的信息。 在输入时,驱动程序必须将 MIB_IF_ROW2 结构的 InterfaceLuid 成员或 InterfaceIndex 成员设置为接口以检索其信息。

返回值

如果函数成功,GetIfEntry2 将返回 STATUS_SUCCESS。

如果函数失败,GetIfEntry2 将返回以下错误代码之一:

返回代码 说明
STATUS_INVALID_PARAMETER

传递给函数的参数无效。 如果在 Row 参数中传递 NULL 指针,则返回此错误。

STATUS_NOT_FOUND

无法找到指定的接口。 如果函数找不到由 Row 参数指向的 MIB_IF_ROW2结构的 InterfaceLuidInterfaceIndex 成员指定的网络接口,则返回此错误。

其他

使用 FormatMessage 函数获取返回的错误的消息字符串。

注解

在输入时,驱动程序必须至少初始化在Row 参数中传递的 MIB_IF_ROW2 结构中的 InterfaceLuidInterfaceIndex 成员。 成员按前面列出的顺序使用。 因此,如果指定了 InterfaceLuid,则此成员用于确定接口。 如果未为 InterfaceLuid 成员设置任何值(此成员的值设置为零),则接下来使用 InterfaceIndex 成员来确定接口。

在输出中,Row 参数指向的 MIB_IF_ROW2 结构的剩余字段将填充。

要求

目标平台

通用

版本

在 Windows Vista 及更高版本的 Windows 操作系统中可用。

头文件

Netioapi.h(包括 Netioapi.h)

Netio.lib

IRQL

< DISPATCH_LEVEL

另请参阅

GetIfTable2

GetIfTable2Ex

MIB_IF_ROW2

MIB_IF_TABLE2