IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Detecter si un portable est sur batterie ou sur secteur?


Sujet :

C++Builder

  1. #1
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut Detecter si un portable est sur batterie ou sur secteur?
    Bonjour à tous!

    Je développe une application destinée à être exécutée sur un PC portable.

    Au lancement de l'appli, je souhaiterais savoir si le PC portable est branché sur secteur, ou si il fonctionne sur batterie.

    Est ce que quelqu'un a une idée pour détecter ça?

    Merci d'avance!
    Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...

  2. #2
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    J'ai finalement trouver la solution: GetSystemPowerStatus et TSystemPowerStatus.

    En plus de savoir si le PC fonctionne sur batterie ou secteur, ca donne accès à d'autres trucs.

    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
      TSystemPowerStatus *powerStatus  = new TSystemPowerStatus();
      GetSystemPowerStatus(powerStatus)  ;
      switch( powerStatus->ACLineStatus )
      {
        case 0   : ShowMessage( "PC SUR BATTERIE" ) ; break ;
        case 1   : ShowMessage( "PC SUR SECTEUR" ) ; break ;
        case 255 : ShowMessage( "IMPOSSIBLE A DETERMINER" ) ; break ;
        default  : ShowMessage( "ERREUR" ) ; break ;
      }
     
      switch( powerStatus->BatteryFlag )
      {
        case 1   : ShowMessage( "NIVEAU BATTERIE HAUT" ) ; break ;
        case 2   : ShowMessage( "NIVEAU BATTERIE BAS" ) ; break ;
        case 4   : ShowMessage( "NIVEAU BATTERIE CRITIQUE" ) ; break ;
        case 8   : ShowMessage( "BATTERIE EN CHARGE" ) ; break ;
        case 128 : ShowMessage( "PAS DE BATTERIE" ) ; break ;
        case 255 : ShowMessage( "IMPOSSIBLE A DETERMINER" ) ; break ;
        default  : ShowMessage( "ERREUR" ) ; break ;
      }
      delete powerStatus;
    Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pc portable sur batterie : ecran qui saute
    Par Algernon2 dans le forum Ordinateurs
    Réponses: 3
    Dernier message: 30/08/2010, 15h19
  2. Réponses: 3
    Dernier message: 16/02/2007, 12h35
  3. Detecter si une jvm est installée sur le poste client
    Par jpastier dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 02/02/2007, 11h43
  4. Portable qui rame quand il est sur batterie
    Par e1lauren dans le forum Ordinateurs
    Réponses: 1
    Dernier message: 12/10/2006, 19h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo