GetIpNetTable 函式 (iphlpapi.h)
GetIpNetTable 函式會擷取 IPv4 到實體位址對應數據表。
語法
IPHLPAPI_DLL_LINKAGE ULONG GetIpNetTable(
[out] PMIB_IPNETTABLE IpNetTable,
[in, out] PULONG SizePointer,
[in] BOOL Order
);
參數
[out] IpNetTable
緩衝區的指標,接收IPv4到實體位址對應數據表做為 MIB_IPNETTABLE 結構。
[in, out] SizePointer
在輸入上,指定 pIpNetTable 參數所指向之緩衝區位元組的大小。
在輸出中,如果緩衝區不夠大,無法保存傳回的對應數據表,則函式會將此參數設定為等於所需的緩衝區大小,以位元組為單位。
[in] Order
布爾值,指定傳回的對應數據表是否應該依IP位址的遞增順序排序。 如果此參數為 TRUE,則會排序數據表。
傳回值
如果函式成功,傳回值會NO_ERROR或ERROR_NO_DATA。
如果函式失敗或未傳回任何數據,則傳回值是下列其中一個錯誤碼。
傳回碼 | Description |
---|---|
|
pIpNetTable 參數所指向的緩衝區不夠大。 必要的大小會在 pdwSize 參數所指向的 DWORD 變數中傳回。 |
|
無效的參數已傳遞至 函式。 如果 pdwSize 參數為 NULL,或 GetIpNetTable 無法寫入 pdwSize 參數所指向的記憶體,就會傳回此錯誤。 |
|
沒有數據可傳回。 實體地址對應表的IPv4是空的。 這個傳回值表示 對 GetIpNetTable 函式的呼叫成功,但沒有要傳回的數據。 |
|
本機電腦上未設定 IPv4 傳輸。 |
|
使用 FormatMessage 取得傳回錯誤的訊息字串。 |
備註
The
GetIpNetTable 函式會列舉本機系統上 IPv4 的位址解析通訊協定 (ARP) 專案,以實體地址對應數據表傳回此資訊 ,並在MIB_IPNETTABLE 結構中傳回此資訊。
IPv4 位址專案會在 pIpNetTable 參數指向的緩衝區中傳回MIB_IPNETTABLE結構。 MIB_IPNETTABLE 結構包含 ARP 專案的計數,以及每個 IPv4 位址專案的MIB_IPNETROW結構數位。
請注意,pIpNetTable 參數所指向的傳回MIB_IPNETTABLE結構可能包含 dwNumEntries 成員與MIB_IPNETTABLE 結構數據表成員中第一個MIB_IPNETROW數位專案之間的對齊填補。 對齊方式的填補也可能出現在 MIB_IPNETROW 數位項目之間。 任何對 MIB_IPNETROW 陣列專案的存取都應該假設可能存在填補。
在 Windows Vista 和更新版本上, GetIpNetTable2 函式可用來擷取 IPv6 和 IPv4 的鄰近 IP 位址。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | iphlpapi.h |
程式庫 | Iphlpapi.lib |
Dll | Iphlpapi.dll |