我正在创建一个桌面应用程序,我想在其中获取我的设备(笔记本电脑)的电池电量。我为此使用 C#。有什么方法可以帮助我做到这一点吗?我已在 Windows Phone 8 平台上使用 Windows.Phone.Devices.Power.Battery.GetDefault().RemainingChargePercent
完成此操作。桌面端也有类似的API吗?
最佳答案
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
关于c# - Windows 桌面应用程序中是否有 API 函数可以获取电池电量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15901682/