2012-01-17 52 views
0

我有多個適配器就像默認的一個,WiFi網絡,3G卡與USB等在Windows中。 如何確定哪一個是活動?我試圖使用GetAdaptersInfo/GetIfEntry,但沒有答案。有人能給我一些建議嗎?如何確定哪個是Windows中的活動適配器?

+0

您可以擁有多個活動(即已啓用)的適配器。你究竟想達到什麼目的? – 2012-01-17 06:35:28

+0

我很抱歉,但塞爾比讓我:) – wells 2012-01-17 08:20:37

回答

2

我不確定你的意思是「活動一」,所以我假設你的意思是「哪一個網絡適配器是默認訪問互聯網」?

致電GetIpForwardTable。枚舉表中的MIB_IPFORWARDROW實例。 dwForwardDest成員設置爲零的行是默認路由。如果dwForwardDest設置爲0(如果您有多個adpater可能會發生這種情況),那麼使用dwForwardMetric1成員作爲打破平局(最低值勝出)。

一旦您從GetIpForwardTable中找到默認路由行,就可以使用dwForwardIfIndex成員來標識調用GetIfTable時默認的哪個適配器。

+0

非常感謝!全能溢出啊!你得到了我,我用你的建議寫了一段代碼,我相信它很好用。哈哈,tks的傢伙再次。我將分享最後的結果。 – wells 2012-01-17 08:18:25

相關問題