public static bool DoesBatteryExist() { System.Windows.Forms.PowerStatus pw = SystemInformation.PowerStatus; if (pw.BatteryChargeStatus == BatteryChargeStatus.NoSystemBattery) { return(false); } return(true); }
public static bool IsBatteryFull() { System.Windows.Forms.PowerStatus pw = SystemInformation.PowerStatus; float floatBatteryPercent = 100 * SystemInformation.PowerStatus.BatteryLifePercent; int batteryPercent = (int)floatBatteryPercent; if (pw.BatteryChargeStatus.HasFlag(BatteryChargeStatus.NoSystemBattery)) { return(true); } if (batteryPercent == 100) { return(true); } if (SystemInformation.PowerStatus.BatteryChargeStatus == BatteryChargeStatus.Charging || SystemInformation.PowerStatus.BatteryChargeStatus == BatteryChargeStatus.High) { return(true); } return(false); }
// Specify what you want to happen when the Elapsed event is raised. private static void OnTimedEvent(string receiver) { System.Windows.Forms.PowerStatus powerStatus = SystemInformation.PowerStatus; //string message = // ("Estado actual de carga de batería: "+ powerStatus.BatteryChargeStatus + ", <br />" + // "Duracion de la carga de batería en minutos: "+ powerStatus.BatteryFullLifetime / 60 + ", <br />" + // "El porcentaje actual de la batería es: " + powerStatus.BatteryLifePercent * 100+ "%, <br />" + // "Cantidad de minutos restantes en uso de batería: "+ powerStatus.BatteryLifeRemaining / 60 + ", <br />" + // "El cable de corriente se encuentra: "+ powerStatus.PowerLineStatus); if (powerStatus.PowerLineStatus.ToString().Equals("Offline") && powerStatus.BatteryLifePercent < 0.20) { string message = string.Format("Conecte la linea de corriente, el equipo se encuentra desconectado y le queda {0}% de bateria", (int)powerStatus.BatteryLifePercent * 100); MailSender sender = new MailSender("*****@*****.**", receiver, message, "Conecte el cargador", null); if (sender.enviaMail()) { Console.WriteLine("Se ha enviado 1 email a " + receiver); } else { Console.WriteLine("Error al enviar email"); } } }