我正在尝试创建连接到某个wifi网络的程序,当它在范围内时,即使已经连接到另一个wifi。
我正在使用SimpleWifi,基本上它效果很好。在我点击Windows 10任务栏中的wifi图标显示网络列表之前,它没有看到新的wifi网络。
如何强制c#程序更新wifi网络列表?
目前使用IEnumerable<AccessPoint> accessPoints = wifi.GetAccessPoints().OrderByDescending(ap => ap.SignalStrength);
更新wifi网络,但正如我所说,在从Windows手动刷新之前,它没有看到新的网络。
答案 0 :(得分:1)
已经快3年了,但是无论如何,这是我的看法。
在该库中,您可以调用: SimpleWifi.Wifi.Disconnect()
在重新连接并再次获得访问点列表之前,我该怎么做。这种方法的工作原理是,在Windows发现后确实会出现新引入的新网络,但比在Windows中单击“ wifi”按钮要慢得多,它将立即打开新发现的网络。
如果有人知道“触发” Windows /托管wifi连接以更新其列表的解决方案,就像您在Windows中所做的那样,我将不胜感激
答案 1 :(得分:0)
SimpleWifi像其他Wifi库一样都内置了此功能。除非查询,否则Windows会不始终显示其正确可用的所有wifi网络。
示例代码可在此处找到:https://pastebin.com/1iCp41SP
,而不是最优雅的代码,但是可以在WPF项目中使用。
这部分代码扫描/刷新SimpleWifi中的Wifi列表
foreach (WlanInterface wlanIface in testClient.Interfaces)
{
wlanIface.Scan();
}