我正在创建一个桌面应用程序,我想在其中获取设备(笔记本电脑)的电池电量。我为此使用 C#。有什么方法可以帮助我做到这一点吗?我已经在 Windows Phone 8 平台上使用Windows.Phone.Devices.Power.Battery.GetDefault().RemainingChargePercent
. 桌面端也有类似的 API 吗?
问问题
1608 次
1 回答
3
private static string GetBatteryLevel()
{
ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_Battery");
using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(query))
{
using (ManagementObjectCollection results = searcher.Get())
{
using (var enumerator = results.GetEnumerator())
{
if (!enumerator.MoveNext())
return string.Empty;
return string.Format("{1} {0}%", enumerator.Current["EstimatedChargeRemaining"],
enumerator.Current["BatteryStatus"].ToString() == "1"
? string.Empty
: "Charging:");
}
}
}
}
您可以使用Windows Management Instrumentation
于 2013-04-09T12:23:15.410 回答