如何以编程方式连接到Windows 10中的隐藏SSID?

dew*_*s92 1 .net windows wifi uwp

我为此花了很长时间,被困住了。
我正在尝试以编程方式连接到已知的隐藏SSID。

我正在使用以下代码

await firstAdapter.ScanAsync();

WiFiAvailableNetwork network = firstAdapter.NetworkReport.AvailableNetworks.FirstOrDefault(n => n.Ssid == ssid);
Run Code Online (Sandbox Code Playgroud)

问题是我需要首先提供一个类型的对象,WiFiAvailableNetworkAvailableNetworks只带回非隐藏的SSID。

public IAsyncOperation<WiFiConnectionResult> ConnectAsync(WiFiAvailableNetwork availableNetwork, WiFiReconnectionKind reconnectionKind, PasswordCredential passwordCredential, String ssid)
Run Code Online (Sandbox Code Playgroud)

https://docs.microsoft.com/zh-cn/uwp/api/windows.devices.wifi.wifiadapter.connectasync#Windows_Devices_WiFi_WiFiAdapter_ConnectAsync_Windows_Devices_WiFi_WiFiAvailableNetwork_Windows_Devices_WiFi_WiFiReconnectionKind_Windows_Security_Credentials_PasswordCredential_System_String_

上面的代码与非隐藏的SSID完美配合。
是否有API连接到隐藏的SSID?
谢谢

小智 5

如果可用,则隐藏网络应在firstAdapter.NetworkReport.AvailableNetworks列表中。

由于隐藏了SSID,因此目标网络的Ssid属性WiFiAvailableNetwork将为""

您可以在此处进行假设并尝试使用以下方法进行连接:

await firstAdapter.ConnectAsync(networks.First(x => x.Ssid == ""), WiFiReconnectionKind.Automatic, "password", "knownSSID");