共用方式為


GetBestInterface 函式 (iphlpapi.h)

GetBestInterface 函式會擷取介面的索引,該介面具有指定 IPv4 位址的最佳路由。

語法

IPHLPAPI_DLL_LINKAGE DWORD GetBestInterface(
  [in]  IPAddr dwDestAddr,
  [out] PDWORD pdwBestIfIndex
);

參數

[in] dwDestAddr

要擷取具有最佳路由之介面的目的地 IPv4 位址,其格式為 IPAddr 結構。

[out] pdwBestIfIndex

DWORD 變數的指標,接收介面的索引,該介面具有 dwDestAddr 所指定之 IPv4 位址的最佳路由。

傳回值

如果函式成功,傳回值會NO_ERROR。

如果函式失敗,傳回值就是下列其中一個錯誤碼。

傳回碼 Description
ERROR_CAN_NOT_COMPLETE
無法完成作業。
ERROR_INVALID_PARAMETER
無效的參數已傳遞至 函式。 如果在 pdwBestIfIndex 參數中傳遞 NULL 指標,或 pdwBestIfIndex 指向無法寫入的記憶體,就會傳回此錯誤。
ERROR_NOT_SUPPORTED
不支援此要求。 如果本機計算機上沒有IPv4堆棧,就會傳回此錯誤。
其他
使用 FormatMessage 函式來取得傳回錯誤的訊息字串。

備註

GetBestInterface 函式只適用於 IPv4 位址。 若要搭配 IPv6 位址使用,必須使用 GetBestInterfaceEx

如需 IPAddr 資料類型的相關信息,請參閱 Windows 資料類型。 若要在點數十進位表示法與 IPAddr 格式之間轉換IP位址,請使用 inet_addrinet_ntoa 函式。

在 Windows Vista 和更新版本上,IP 協助程式會在內部將 pdwBestIfIndex 參數視為 NET_IFINDEX數據類型的 指標。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 iphlpapi.h
程式庫 Iphlpapi.lib
Dll Iphlpapi.dll

另請參閱

GetBestInterfaceEx

GetBestRoute

IP 協助程式函式參考

IP 協助程式起始頁

IPAddr

MIB_BEST_IF

Windows 資料類型