未连接到 WiFi 网络时启动内置 Windows MobileHotspot

问题描述 投票:0回答:1

我正在尝试使用 C# 程序在 Windows 10 笔记本电脑上启动移动热点。要求类似于 this,但我无法使用 NetworkOperatorTetheringManager 类,因为它需要将设备连接到无线网络。如果没有连接到网络,下面程序中返回的

ConnectionProfile
将为空。

ConnectionProfile connectionProfile = Windows.Networking.Connectivity.NetworkInformation.GetInternetConnectionProfile();
NetworkOperatorTetheringManager tetheringManager = NetworkOperatorTetheringManager.CreateFromConnectionProfile(connectionProfile);

我知道这是可能的,因为 Windows 商店中有一个名为 Hotspot Lite 的应用程序可以执行此操作。可以使用此应用程序启动移动热点,而无需连接到 WiFi 网络。

我正在寻找使用 Windows api 的解决方案,更具体地说,使用 Windows WiFiDirect api。感谢任何指向正确方向的答案。

c# windows wifi-direct hotspot
1个回答
0
投票

我知道这是一个老问题,但我真的不喜欢人们回答“RTFM”。尤其是微软的文档实在是太糟糕了。 NetworkOperatorTetheringManager.CreateFromConnectionProfile 的第一个参数必须是连接配置文件,但如果您未连接到互联网,则给定的调用将提供 null。

因此,如果您不关心互联网连接,只需获取网络适配器列表并选择一个合适的即可。可能有一个以太网适配器未插入,可能名为“Ethernet0”,所以使用它:)我假设任何读到此内容的人都知道如何循环列表:

IReadOnlyList 连接 = Windows.Networking.Connectivity.NetworkInformation.GetConnectionProfiles();

免责声明:这并不意味着其他东西以后将无法工作,因为适配器未连接,它只是解决了这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.