【问题标题】:Update Wifi networks programmatically以编程方式更新 Wifi 网络
【发布时间】:2020-11-26 23:31:42
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: c# winforms windows-10 wifi


    【解决方案1】:

    这差不多是 3 年前的事了,但无论如何,这是我对这个问题的看法。

    在该库中,您可以调用: SimpleWifi.Wifi.Disconnect()

    我在重新连接并再次获取接入点列表之前执行此操作。这有点像,在 Windows 发现后引入的新网络确实出现了,但比在 Windows 中单击“wifi”按钮要慢得多,这会立即显示新发现的网络。

    如果有人知道“触发”Windows/托管 wifi 连接以更新其列表的解决方案,就像您在 Windows 中所做的那样,我将不胜感激

    【讨论】:

      【解决方案2】:

      SimpleWifi 与其他 Wifi 库一样内置了此功能。并且它是必需的,因为 Windows 始终正确显示所有可用的 wifi 网络,除非被查询..

      示例代码可以在这里找到:https://pastebin.com/1iCp41SP ,不是最优雅的代码,但在 WPF 项目中工作。 这部分代码扫描/刷新SimpleWifi中的Wifi列表

          foreach (WlanInterface wlanIface in testClient.Interfaces)
          {
             wlanIface.Scan();
          }
      

      【讨论】:

        猜你喜欢
        • 2023-01-27
        • 2013-04-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-02
        • 1970-01-01
        相关资源
        最近更新 更多