Este é o código que peguei aqui no forum,
ao compilar da este erro:
warning C4700: local variable 'status' used without having been initialized
para as duas linhas onde o "SYSTEM_POWER_STATUS_EX status;" está declarado,
e retorna na "status.BackupBatteryLifePercent" sempre 39, seja no emulador como no pocket, um IPAQ 1930.
Alguma idéia ?
Saludos
Mauro
Code: Select all
#pragma BEGINDUMP
#include <hbapi.h>
#include <windows.h>
#include <aygshell.h>
HB_FUNC (BATTERYLIFE)
{
BOOL iRet;
SYSTEM_POWER_STATUS_EX status;
iRet = (&status, TRUE);
hb_retnl ((INT) status.BatteryLifePercent);
}
HB_FUNC (BATTERYINFO)
{
BOOL iRet;
SYSTEM_POWER_STATUS_EX status;
iRet = (&status, TRUE);
hb_reta (9);
hb_stornl ((INT) status.ACLineStatus, -1, 1);
hb_stornl ((INT) status.BatteryFlag, -1, 2);
hb_stornl ((INT) status.BatteryLifePercent, -1, 3);
hb_stornl ((ULONG) status.BatteryLifeTime, -1, 4);
hb_stornl ((ULONG) status.BatteryFullLifeTime, -1, 5);
hb_stornl ((INT) status.BackupBatteryFlag, -1, 6);
hb_stornl ((INT) status.BackupBatteryLifePercent, -1, 7);
hb_stornl ((ULONG) status.BackupBatteryLifeTime, -1, 8);
hb_stornl ((ULONG) status.BackupBatteryFullLifeTime, -1, 9);
}
#pragma ENDDUMP