如何确定Windows中的活动适配器?

问题描述 投票:0回答:1

我有多个适配器就像默认的一样,wifi-net,带有usb等的3G卡在Windows中。如何确定哪一个是活动?我试图使用GetAdaptersInfo / GetIfEntry,但没有答案。有人可以给我一些建议吗?

windows api network-programming adapter
1个回答
3
投票

我不确定你的“活动一”是什么意思,所以我假设你的意思是“哪个网络适配器是到达互联网的默认设置”?

打电话给GetIpForwardTable。枚举表中的MIB_IPFORWARDROW实例。 dwForwardDest成员设置为零的行是默认路由。如果多行将dwForwardDest设置为0(如果您有多个adpater,则会发生这种情况),然后使用dwForwardMetric1成员作为决胜局(最低值获胜)。

一旦从GetIpForwardTable找到默认路由行,就可以使用dwForwardIfIndex成员来识别对GetIfTable的调用中的哪个适配器是默认的。

© www.soinside.com 2019 - 2024. All rights reserved.