【问题标题】: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() 只告诉它是否正在充电。

【问题讨论】:

    标签: c# .net winapi windows-ce power-management


    【解决方案1】:

    可以调用 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 准确提供此信息吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-29
    • 2014-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-15
    相关资源
    最近更新 更多