c++ - Controle la carga de la batería con la API Win32
winapi monitor (3)
Intento escribir una pequeña aplicación que monitorea cuánta energía queda en una batería de portátil y me gustaría saber qué función de Win32 podría usar para lograrlo.
Para Vista y arriba puedes usar RegisterPowerSettingNotification
Para funciones anteriores, consulte las Funciones de administración de energía en esta sección de la página de MSDN "Funciones de administración de energía: Windows Server 2003 y anteriores"
Puede ver el código de ejemplo del método Vista en codeproject .
Hay un artículo muy detallado en el siguiente enlace, así como un proyecto de ejemplo (probado trabajando en Win8.1): http://www.codeproject.com/Articles/15829/Vista-Goodies-in-C-Monitoring- the-Computer-s-Power
Recomiendo el uso de la función Win32 GetSystemPowerStatus . Un fragmento de código:
int getBatteryLevel()
{
SYSTEM_POWER_STATUS status;
GetSystemPowerStatus(&status);
return status.BatteryLifePercent;
}