小编Boo*_*rap的帖子

读取浮动/双倍笔记本电脑电池状态

我有一个程序可以读取Windows中的电池状态,如下所示(简化代码):

#include <iostream>
#include <windows.h>

using namespace std;

int main(int argc, char *argv[]) {
    SYSTEM_POWER_STATUS spsPwr;
    if( GetSystemPowerStatus(&spsPwr) ) {
        cout << "\nAC Status : " << static_cast<double>(spsPwr.ACLineStatus)
             << "\nBattery Status : " << static_cast<double>(spsPwr.BatteryFlag)
             << "\nBattery Life % : " << static_cast<double>(spsPwr.BatteryLifePercent)
             << endl;
        return 0;
    } else return 1;
}
Run Code Online (Sandbox Code Playgroud)

spsPwr.BatteryLifePercent电池的剩余电量以百分比表示,属于类型BYTE,表示只能以整数显示读数(即int)。我注意到一个名为BatteryBar的应用程序可以在浮点值中显示电池百分比。

BatteryBar是一个.NET应用程序。如何使用带有Windows API的纯C / C ++以浮点/双精度获取电池百分比读数?(最好使用MinGW编译的解决方案)

c++ winapi power-management

5
推荐指数
1
解决办法
6522
查看次数

标签 统计

c++ ×1

power-management ×1

winapi ×1