GetIpPathEntry 函式
GetIpPathEntry函式會擷取本機電腦上的 IP 路徑專案資訊。
語法
NETIOAPI_API GetIpPathEntry(
_Inout_ PMIB_IPPATH_ROW Row
);
參數
- 資料列 [in, out]
IP 路徑專案的 MIB_IPPATH_ROW 結構專案的指標。 成功傳回時,此結構會更新為 IP 路徑專案的屬性。
傳回值
如果函式成功,GetIpPathEntry會傳回STATUS_SUCCESS。
如果函式失敗, GetIpPathEntry 會傳回下列其中一個錯誤碼:
傳回碼 | 描述 |
---|---|
STATUS_INVALID_PARAMETER | 不正確參數已傳遞至 函式。 如果在Row參數中傳遞Null指標,則傳回這個錯誤,如果Row 參數指向的MIB_IPPATH_ROW 結構目的地成員中的si_family成員未設定為 AF_INET 或 AF_INET6,或是未指定 MIB_IPPATH_ROW 結構的InterfaceLuid和InterfaceIndex成員。 如果MIB_IPPATH_ROW結構來源成員中的si_family成員不符合目的地 IP 位址系列,而且來源 IP 位址的si_family未指定為AF_UNSPEC,也會傳回此錯誤。 |
STATUS_NOT_FOUND | 找不到指定的介面。 如果函式找不到Row參數所指向之MIB_IPPATH_ROW結構的InterfaceLuid或InterfaceIndex成員所指定的網路介面,就會傳回此錯誤。 |
STATUS_NOT_SUPPORTED | 不支援此要求。 如果本機電腦上沒有 IPv4 堆疊,而且在Row參數所指向之MIB_IPPATH_ROW結構的Source和 Destination 成員中指定了 IPv4 位址,或如果本機電腦上沒有 IPv6 堆疊,且在 Source和Destination成員中指定了 IPv6 位址,則會傳回此錯誤。 |
其他 | 使用 FormatMessage 函式來取得傳回錯誤的訊息字串。 |
備註
GetIpPathEntry函式可用來擷取MIB_IPPATH_ROW結構專案。
在輸入時,驅動程式必須初始化 Row 參數指向的下列MIB_IPPATH_ROW結構成員。
目的地
設定為有效的 IPv4 或 IPv6 位址和系列。來源
將 [來源 ] 成員中指定的位址系列設定為 [ 目的地 ] 成員中指定的目的地 IP 位址系列,或設定為 [AF_UNSPEC]。InterfaceLuid 或 InterfaceIndex
這些成員會依照稍早所列的順序使用。 因此,如果指定 InterfaceLuid ,則會使用此成員來判斷介面。 如果未為 InterfaceLuid 成員設定任何值, (這個成員的值設定為零) ,則接著會使用 InterfaceIndex 成員來判斷介面。
在輸出中,當呼叫成功時, GetIpPathEntry 會擷取 IP 路徑專案的其他屬性,並填入 Row 參數所指向的MIB_IPPATH_ROW結構。
驅動程式可以呼叫 GetIpPathTable 函式,以列舉本機電腦上的 IP 路徑專案。
規格需求
目標平台 |
普遍 |
版本 |
可在 Windows Vista 和更新版本的 Windows 作業系統中使用。 |
標頭 |
Netioapi.h (包含 Netioapi.h) |
程式庫 |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |