如何检测和禁用Windows 7虚拟WiFi适配器

4

Windows 7有一个名为“虚拟无线适配器”的新功能。了解更多信息:

http://www.istartedsomething.com/20090516/windows-7-native-virtual-wifi-technology-microsoft-research/

我有一个应用程序直接使用本机Wifi API控制Windows wifi接口卡(http://msdn.microsoft.com/en-us/library/ms706556%28VS.85%29.aspx)。请按照本问题的要求,我需要使用该文档记录的API直接控制wifi适配器,而不能仅将其留给操作系统和用户。

据说Windows 7虚拟适配器应包含在任何经批准的Windows 7 wifi驱动程序中。现在可用的驱动程序似乎相当有错误,并且我发现,除非我手动禁用虚拟wifi适配器,否则真实适配器不会在WLAN api指示下可靠地连接到无线接入点。

我的主要问题是“如何检测Windows虚拟wifi适配器的存在?”

请注意,WlanEnumInterfaces的文档说:

如果计算机只有一个无线网络适配器,则此虚拟设备通常显示为“网络连接文件夹”中的“Wireless Network Connection 2”,其设备名称为“Microsoft Virtual WiFi Miniport适配器”。此虚拟设备专门用于执行软件访问点(SoftAP)连接,并不在WlanEnumInterfaces函数返回的列表中。

我怀疑有一个shell api可以提供控制面板用于显示虚拟适配器的枚举。

额外的收益是,如何通过程序禁用此适配器?

提前致谢。

2个回答

2

要使用与Windows SDK版本6.1中定义的wlanapi.h相对应的版本来检测具有WLAN api的Windows 7虚拟适配器。

您可以使用netcon.h中定义的WMI或INetConnection COM接口来启用或禁用网络适配器。


0
在控制面板中的网络和 Internet 选项中,有一个名为“添加无线设备”的选项。我使用它来检测微软虚拟 WiFi 迷你端口适配器,因为在安装 Windows 7 后它没有出现在网络适配器中,但它存在并启用,但未启动。 要从以管理员身份运行的命令提示符中禁用它,您可以尝试: netsh wlan set hostednetwork mode=disallow (或 disallowed,我还没有尝试过)。请参见 http://msdn.microsoft.com/en-us/library/dd815243%28VS.85%29.aspx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接