Я перечисляю MAC-адреса компьютера, используя GetAdaptersAddresses
Win32 API, который возвращает список всех адаптеров, имеющихся на этом компьютере.
Когда пользователь включает WiFi, список содержит три новых элемента:
- XXXXXXXXFCD8: фактический WiFi (Intel)
- XXXXXXXXFCDA: Microsoft Virtual WiFi
- XXXXXXXXFCDA: Microsoft Virtual WiFi
Начало MAC-адресов было отредактировано, но все они равны, за исключением последней цифры, которая перевернула один бит. Я знаю, что эти две виртуальные карты WiFi получены из функции Wireless Hosted Network , но я не могу попросить каждого пользователя отключить это.
Поскольку меня интересует только фактическая карта WiFi, я пытаюсь найти способ надежной идентификации двух карт «Microsoft Virtual WiFi». Я посмотрел на различных членов структуры IP_ADAPTER_ADDRESSES
, которые дали мне следующее.
Реальный WiFi:
FriendlyName = Connexion réseau sans fil 4
AdapterName = {57DA33EE-F8E2-4F2C-B989-12EEB680CD64}
Description = Intel(R) Dual Band Wireless-AC 7260 #2
PhysicalAddressLength = 6
PhysicalAddress = 0000XXXXXXXXFCD8
Flags = 01E5
IfType = 71
TunnelType = 0
OperStatus = 1
Первый виртуальный WiFi:
FriendlyName = Connexion réseau sans fil 5
AdapterName = {7E6DCD1E-BFBB-41AF-A4B1-467C2FFB5D5E}
Description = Microsoft Virtual WiFi Miniport Adapter #3
PhysicalAddressLength = 6
PhysicalAddress = 0000XXXXXXXXFCDA
Flags = 01C5
IfType = 71
TunnelType = 0
OperStatus = 2
Второй виртуальный WiFi
FriendlyName = Connexion réseau sans fil 6
AdapterName = {CC263A05-8034-46C9-9060-FC353D9BBBCB}
Description = Microsoft Virtual WiFi Miniport Adapter #4
PhysicalAddressLength = 6
PhysicalAddress = 0000XXXXXXXXFCDA
Flags = 01C5
IfType = 71
TunnelType = 0
OperStatus = 2
Как видите, кроме Description
, который, по-видимому, не локализован, я не вижу никакой разницы между этими тремя сетевыми картами.
Вам известен другой API, который позволил бы мне проверить, происходит ли данный адаптер из функции «Беспроводная размещенная сеть»?
Если нет, то считаете ли вы, что поиск Microsoft Virtual WiFi
в члене Description
был бы устойчивым во времени способом сделать это?