从Visual Studio中如何找到以太网或无线网卡的MAC地址,并忽略VPN虚拟mac地址以及其他可能在您查看ipconig时显示MAC地址的设备 - 所有我们只需找到MAC提供互联网连接的地址。
答案 0 :(得分:0)
你在这里问几个问题。
第一个问题是:“如何确定哪个网络适配器提供到Internet的连接?”
该问题的答案是:“咨询routing table。”另外,"How does Windows 7 decide which route to take if 2 connections to an internet source exist? (e.g. a Wireless and an Ethernet one to a router)"
GetBestInterace
函数将确定(基于路由表中的信息)连接到给定IP地址的最佳接口。
第二个问题是:“如何确定给定网络适配器的MAC地址?”
答案是GetAdaptersAddresses
。此函数将返回IP_ADAPTER_ADDRESSES
结构的链接列表。
从此,您应该能够找到IfIndex
与您想要的匹配的那个(可能是来自GetBestInterace
的那个)。或者,您可以查看每个结构的IfType
,并专门查看任何IF_TYPE_ETHERNET_CSMACD
(以太网)或IF_TYPE_IEEE80211
(Wi-Fi)适配器。
您应该使用哪种方法的决定取决于您要完成的具体内容。