Monitorear la carga de la batería con Win32 API
-
04-07-2019 - |
Pregunta
Estoy tratando de escribir una pequeña aplicación que monitoree cuánta energía queda en la batería de una computadora portátil y me gustaría saber qué función Win32 podría usar para lograr eso.
Solución
Para Vista y versiones superiores, puede 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 versiones anteriores "
Puede ver el código de ejemplo del método Vista en codeproject .
Otros consejos
Recomiendo el uso de Win32 GetSystemPowerStatus función. Un fragmento de código:
int getBatteryLevel()
{
SYSTEM_POWER_STATUS status;
GetSystemPowerStatus(&status);
return status.BatteryLifePercent;
}
Hay un artículo muy detallado en el siguiente enlace, así como un proyecto de ejemplo (probado en Win8.1): http://www.codeproject.com/Articles/15829/Vista-Goodies-in-C-Monitoring-the-Computer- s-Power