在 Windows CE 6 中,我如何知道电池是不是仍在充电或已充满?

Posted

技术标签:

【中文标题】在 Windows CE 6 中,我如何知道电池是不是仍在充电或已充满?【英文标题】:How would I be able to know if the battery is still charging or full in Windows CE 6?在 Windows CE 6 中,我如何知道电池是否仍在充电或已充满? 【发布时间】:2011-03-10 10:14:51 【问题描述】:

充电时,如何知道电池是否已充满?

GetSystemPowerStatusEx2() 只告诉它是否正在充电。

【问题讨论】:

【参考方案1】: How to: Determine Battery Status

可以调用 Windows CE GetSystemPowerStatusEx2 函数来返回 SYSTEM_POWER_STATUS_EX2 结构。此结构包含有关设备电源状态的重要详细信息。此结构中三个最有用的细节是 ACLineStatusBatteryFlagBatteryLifePercent 成员。

为了生成准确和完整的信息,设备制造商必须从其电池驱动程序中填充此数据,如以下代码所示:

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.

【讨论】:

谢谢,但我想知道插入交流电源后电池是否仍在充电或充满。 SYSTEM_POWER_STATUS_EX2 不通过成员AC_LINE_ONLINEBATTERY_FLAG_CHARGING 准确提供此信息吗?

以上是关于在 Windows CE 6 中,我如何知道电池是不是仍在充电或已充满?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Windows CE 6.0 设备中配置 *** 客户端 [关闭]

如何从 Windows 内核获取电池电量通知?

在 Windows CE 6.0 中的进程之间共享 GDI 句柄

如何使用vs2005将.txt文件读入字符串windows 6 classic/windows CE?

提升 C++ 和 Windows CE 6.0

windows ce 5.0 的应用程序是不是适合在 windows ce 6.5 上使用?