GetIpForwardEntry2 函式
GetIpForwardEntry2函式會擷取本機電腦上的 IP 路由專案資訊。
語法
NETIOAPI_API GetIpForwardEntry2(
_Inout_ PMIB_IPFORWARD_ROW2 Row
);
參數
- 資料列 [in, out]
IP 路由專案的 MIB_IPFORWARD_ROW2 結構專案的指標。 成功傳回時,此結構會更新為 IP 路由專案的屬性。
傳回值
如果函式成功,GetIpForwardEntry2會傳回STATUS_SUCCESS。
如果函式失敗, GetIpForwardEntry2 會傳回下列其中一個錯誤碼:
傳回碼 | 描述 |
---|---|
STATUS_INVALID_PARAMETER | 不正確參數已傳遞至 函式。 如果發生下列其中一種情況,就會傳回此錯誤:
|
STATUS_NOT_FOUND | 找不到指定的介面。 如果函式找不到Row參數所指向之 MIB_IPFORWARD_ROW2 結構之InterfaceLuid或InterfaceIndex成員所指定的網路介面,就會傳回此錯誤。 |
STATUS_NOT_SUPPORTED | 不支援此要求。 如果本機電腦上沒有 IPv4 堆疊,而且AF_INET是在Row 參數所指向之MIB_IPFORWARD_ROW2 結構的 DestinationPrefix成員中指定位址系列,或者如果沒有 IPv6 堆疊位於本機電腦上,且已針對DestinationPrefix成員中的位址系列指定AF_INET6,就會傳回此錯誤。 |
其他 | 使用 FormatMessage 函式來取得傳回錯誤的訊息字串。 |
備註
GetIpForwardEntry2函式可用來擷取MIB_IPFORWARD_ROW2結構專案。
在輸入時,驅動程式必須初始化 Row 參數指向之MIB_IPFORWARD_ROW2結構的下列成員。
DestinationPrefix
設定為有效的 IPv4 或 IPv6 位址首碼和系列。NextHop
設定為有效的 IPv4 或 IPv6 位址和系列。InterfaceLuid 或 InterfaceIndex
這些成員會依照稍早所列的順序使用。 因此,如果指定 InterfaceLuid ,則會使用此成員來判斷介面。 如果 InterfaceLuid 成員未設定任何值, (此成員的值設定為零) ,則 Next 會使用 InterfaceIndex 成員來判斷介面。
在輸出中,當呼叫成功時, GetIpForwardEntry2 會擷取 IP 路由專案的其他屬性,並填入 Row 參數所指向的MIB_IPFORWARD_ROW2結構。
MIB_IPFORWARD_ROW2 結構的 Metric 成員中指定的路由計量位移, Row 參數所指向只代表完整路由計量的一部分。 完整計量是新增至介面計量的路由計量的組合,該計量是在相關聯介面之MIB_IPINTERFACE_ROW結構之 計量成員中指定的 。 驅動程式可以藉由呼叫 GetIpInterfaceEntry 函式 來擷取介面計量。
您的驅動程式可以呼叫 GetIpForwardTable2 函式,以列舉本機電腦上的 IP 路由專案。
規格需求
目標平台 |
普遍 |
版本 |
可在 Windows Vista 和更新版本的 Windows 作業系統中使用。 |
標頭 |
Netioapi.h (包括 Netioapi.h) |
程式庫 |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |