Vyzkoušel bych System.Windows.Forms.SystemInformation.PowerStatus z assembly System.Windows.Forms. Existuje tam (mimo jiných) vlastnost BatteryLifeRemaining, což je odhadovaná doba výdrže ve vteřinách. Pokud vás to zajímá, interně tato třída využívá API:
[DllImport("kernel32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
public static extern bool GetSystemPowerStatus([In] [Out] ref NativeMethods.SYSTEM_POWER_STATUS systemPowerStatus);
|