以编程方式更新Wifi网络

时间:2017-02-08 04:26:11

标签: c# winforms windows-10 wifi

我正在尝试创建连接到某个wifi网络的程序,当它在范围内时,即使已经连接到另一个wifi。

我正在使用SimpleWifi,基本上它效果很好。在我点击Windows 10任务栏中的wifi图标显示网络列表之前,它没有看到新的wifi网络。

如何强制c#程序更新wifi网络列表?

目前使用IEnumerable<AccessPoint> accessPoints = wifi.GetAccessPoints().OrderByDescending(ap => ap.SignalStrength);更新wifi网络,但正如我所说,在从Windows手动刷新之前,它没有看到新的网络。

2 个答案:

答案 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();
    }