充电时,如何知道电池是否已充满?
GetSystemPowerStatusEx2()
只告诉它是否正在充电。
可以调用Windows CE GetSystemPowerStatusEx2函数来返回SYSTEM_POWER_STATUS_EX2结构。此结构包含有关设备电源状态的重要详细信息。此结构中最有用的三个细节是ACLineStatus、BatteryFlag和BatteryLifePercent成员。
为了产生准确和完整的信息,设备制造商必须从他们的电池驱动程序中填充这些数据,如以下代码所示:
PSYSTEM_POWER_STATUS_EX2 pwrstat=0;
if (!GetSystemPowerStatusEx2(pwrstat,sizeof(pwrstat),FALSE))
{
MessageBox(hWnd,_T("Couldn't get power state"), _T("Error"),MB_OK);
}
else
{
// Extract the power status information you need.
}