gpt4 book ai didi

c# - 我们如何以编程方式更改无线蓝牙 radio 电源管理#

转载 作者:行者123 更新时间:2023-11-30 22:53:03 24 4
gpt4 key购买 nike

我在使用外部蓝牙设备的应用程序时遇到问题。当设备闲置一段时间时 Windows 打开蓝牙 radio 的电源。当我取消选中蓝牙 radio 的“电源管理”选项卡下时[允许计算机关闭此设备以节省电量。]它起作用了。见图像。同样需要从 C# 代码实现。这需要从 Win7 开始完成。 Power Management Option我不熟悉 Windows C# 的电源管理选项。我在这里有什么选择?是否有我可以使用的事件或 WMI 类?

我应该能够在我的 WPF 应用程序运行时更改这些设置。并在关闭时恢复它。

最佳答案

您可以使用 C# 中的 WMI 轻松完成此操作。确保添加对 System.Management 的引用(以及 using System.Management; 语句)

    //BTHUSB will identify physical bluetooth adapters only, if you want all bluetooth devices use 'WHERE PNPClass='Bluetooth' or specific device 'WHERE Name='Intel(R) Wireless Bluetooth(R)'
ManagementObjectCollection PhysicalBluetoothAdapterResults = new ManagementObjectSearcher("root\\CIMV2", "SELECT DeviceID FROM Win32_PnPEntity WHERE Service='BTHUSB'").Get();
foreach(ManagementObject PhysicalBluetoothAdapter in PhysicalBluetoothAdapterResults)
{
string DeviceID = PhysicalBluetoothAdapter.Properties["DeviceID"].Value.ToString().Replace("\\","\\\\");
ManagementObjectCollection AdapterPowerOptionResults = new ManagementObjectSearcher("root\\WMI", $"SELECT * FROM MSPower_DeviceEnable WHERE InstanceName LIKE '{DeviceID}_%'").Get();
foreach(ManagementObject AdapterPowerOption in AdapterPowerOptionResults)
{
AdapterPowerOption.Properties["enable"].Value = false;
AdapterPowerOption.Put();
}
}

希望这对您有所帮助。

-保罗

关于c# - 我们如何以编程方式更改无线蓝牙 radio 电源管理#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57620672/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com