【发布时间】:2016-06-09 19:51:02
【问题描述】:
我正在寻找一种 API 以在 Windows 中以编程方式打开和关闭无线电,就像以下 Windows 10 UI 元素所做的那样:
- 需要打开/关闭 Wi-Fi、蓝牙或移动宽带
- 适用于 Windows 7、8 和 10
- 这不是电话
- C#/.NET4.5 是理想的,但 C++/Win32 也可以工作
【问题讨论】:
我正在寻找一种 API 以在 Windows 中以编程方式打开和关闭无线电,就像以下 Windows 10 UI 元素所做的那样:
【问题讨论】:
对于 Windows 10,您可以使用 Radio Manager API 来控制不同的无线电状态。您可以找到完整的sample apps here(C# 和 C++)。
首先,您需要访问所有系统无线电。这必须在 UI 线程中调用:
var accessLevel = await Radio.RequestAccessAsync();
然后,您可以找到系统上的所有无线电(示例描述了访问无线电的其他方式):
var radios = await Radio.GetRadiosAsync();
给定一个无线电对象,您可以通过以下方式更改状态:
Radio radio = SOME_RADIO;
radio.StateChanged = Radio_StateChangedCallback; // Called when the radio state completes the change
radio.SetStateAsync(RadioState.On); // Or RadioState.Off
【讨论】:
【讨论】:
我知道你可以用
操作无线连接netsh interface set interface name="Local Area Connection" 通过 cmd 行。
所以也许在 c# 中你可以使用Process.Start("netsh", "set name=\"Local Area Connection\""); 来更改 wifi 设置。我相信你可以下载一个蓝牙命令行实用程序并用它做类似的事情。
稍后我可以在我的 Windows 机器上进行测试,但我现在不能,希望这会有所帮助。
【讨论】: