Класс Win32_NetworkAdapterConfiguration не может получить сведения о PPPoE (протокол "точка — точка" через Ethernet) и VPN (виртуальная частная сеть)
Эта статья поможет устранить проблему, из-за которой классу не Win32_NetworkAdapterConfiguration
удается получить сведения о PPPoE (протокол "точка — точка" через Ethernet) и VPN (виртуальная частная сеть).
Применимо к: Windows Vista
Исходный номер базы знаний: 2549091
Симптомы
В Windows Vista и более поздних версиях Win32_NetworkAdapterConfiguration
класс не может получить сведения о подключении PPPoE и VPN-подключении.
Если программа предназначена для получения сведений о коммутируемом подключении или виртуальной частной сети с помощью Win32_NetworkAdapterConfiguration
класса в Windows XP, она может не работать в Windows Vista и более поздних версиях.
Дополнительные сведения о классе см. в Win32_NetworkAdapterConfiguration
разделе класс Win32_NetworkAdapterConfiguration.
Причина
В Windows Vista и более поздних версиях Win32_NetworkAdapterConfiguration
класс не создает экземпляр для подключения PPPoE или VPN-подключения.
Корпорация Майкрософт подтвердила, что это проблема в нашем продукте.
Разрешение
В Windows Vista и более поздних версиях вы можете получить почти те же сведения, что Win32_NetworkAdapterConfigurationthe
и класс о подключении PPPoE или VPN-подключении, используя любой из следующих методов.
Было бы высоко оценено, если вы считаете, что любой из следующих методов является приемлемым.
Используйте класс платформа .NET Framework
NetworkInterface
.Используйте метод для
NetworkInterface.GetAllNetworkInterfaces
получения массиваNetworkInterface
. Затем перейдите по массивуNetworkInterface
, чтобы найтиNetworkInterface
экземпляр со свойствомNetworkInterface.NetworkInterfaceType
Ppp. Каждое значение PPPoE или VPN-подключения можно получить, ссылаясь на каждое свойство, которое имеет этот экземпляр.Дополнительные сведения о
NetworkInterface
классе или образце кода для этого см. в разделе Класс NetworkInterface.Дополнительные сведения о каждом свойстве класса см. в
NetworkInterface
разделе Класс NetworkInterface.GetAdaptersAddresses
Используйте API.GetAdaptersAddresses
Используйте API для полученияIP_ADAPTER_ADDRESSES
структуры. Затем перейдите по связанномуIP_ADAPTER_ADDRESSES
списку структур, чтобы найти элемент с элементом, для которогоIfType
задано значениеIF_TYPE_PPP
. Каждое значение PPPoE или VPN-подключения можно получить, ссылаясь на каждый член элемента .Дополнительные сведения об
GetAdaptersAddresses
API или образце кода для этого см. в разделе Функция GetAdaptersAddresses (iphlpapi.h).Дополнительные сведения о каждом элементе структуры см. в
IP_ADAPTER_ADDRESSES
разделе структура IP_ADAPTER_ADDRESSES_LH (iptypes.h).
Действия по воспроизведению
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по