GetIfTable2 函数
GetIfTable2 函数检索 MIB-II 接口表。
语法
NETIOAPI_API GetIfTable2(
_Out_ PMIB_IF_TABLE2 *Table
);
参数
- 表 [out]
指向缓冲区的指针,该缓冲区接收 MIB_IF_TABLE2 结构中的接口表。
返回值
如果函数成功,GetIfTable2 将返回STATUS_SUCCESS。
如果函数失败, GetIfTable2 将返回以下错误代码之一:
返回代码 | 说明 |
---|---|
STATUS_NOT_ENOUGH_MEMORY | 可用内存资源不足,无法完成该操作。 |
其他 | 使用 FormatMessage 函数获取返回错误的消息字符串。 |
注解
GetIfTable2 函数枚举本地计算机上的逻辑接口和物理接口,并在MIB_IF_TABLE2结构中返回此信息。
驱动程序可以使用类似的函数 GetIfTable2Ex 指定要返回的接口级别。 调用将 Level 参数设置为 MibIfTableNormal 的 GetIfTable2Ex 函数将检索与调用 GetIfTable2 函数相同的结果。
GetIfTable2 返回 Table 参数指向的缓冲区中MIB_IF_TABLE2结构中的接口。 MIB_IF_TABLE2 结构包含接口计数和每个接口 的MIB_IF_ROW2 结构数组。 GetIfTable2 为此结构中的MIB_IF_TABLE2结构和MIB_IF_ROW2项分配内存。 当不再需要这些返回的结构时,驱动程序应通过调用 FreeMibTable 释放内存。
请注意, Table 参数指向的返回MIB_IF_TABLE2结构可能包含 NumEntries 成员与 MIB_IF_TABLE2 结构的 Table 成员中第一个MIB_IF_ROW2数组条目之间的对齐填充。 MIB_IF_ROW2数组条目之间也可能存在对齐填充。 对MIB_IF_ROW2数组条目的任何访问都应假定可能存在填充。
要求
目标平台 |
通用 |
版本 |
在 Windows Vista 和更高版本的 Windows 操作系统中可用。 |
标头 |
Netioapi.h (包括 Netioapi.h) |
库 |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |