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來指定要傳回的介面層級。 呼叫 GetIfTable2Ex 函式, 並將 Level 參數設定為 MibIfTableNormal 會擷取與呼叫 GetIfTable2 函式相同的結果。
GetIfTable2 會傳回 Table 參數指向之緩衝區中MIB_IF_TABLE2結構的介面。 MIB_IF_TABLE2 結構包含介面計數和每個介面 MIB_IF_ROW2 結構的陣列。 GetIfTable2 會配置MIB_IF_TABLE2結構的記憶體,以及此結構中的MIB_IF_ROW2專案。 不再需要這些傳回的結構時,您的驅動程式應該呼叫 FreeMibTable來釋放記憶體。
請注意,傳回的 MIB_IF_TABLE2 結構, Table 參數所指向的 結構可能包含 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 |