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# Discussion :

Comment écrire sur la carte mère d'un PC EN C#


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Comment écrire sur la carte mère d'un PC EN C#
    Bonjour tout le monde,je suis nouvelle sur le forum...
    Enfait je débute en C# (Application Windows) et je doit réaliser un pti projet et depuis quelques jours je plante au sujet d'une fonction : Elle doit être capable d'écrire (de modifier) un élément de la carte mère du PC (exemple: date,heure...).
    J'ai pas beaucoup d'infos concernant ça,je sèche grave alors svp est-ce que quelqu'un qui s'y connait peu m'aider un peu???

    Merci d'avance ^^

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    La date et l'heure se mettent à jour indirectement à travers Windows et non par accès direct à la carte mère.

    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
    [DllImport("kernel32.dll", SetLastError=true)] 
    Public static extern int SetLocalTime (ref SystemTime lpSystemTime); 
    //struct for date/time apis 
    public struct SystemTime 
    { 
      public short wYear, wMonth, wDayOfWeek, wDay; 
      public short wHour, wMinute, wSecond, wMilliseconds; 
    } 
     
    SystemTime systNew = new SystemTime(); 
    // set the properties 
    systNew.wDay  = 1; systNew.wMonth  = 1; systNew.wYear   = 2004; 
    systNew.wHour = 9; systNew.wMinute = 0; systNew.wSecond = 0; 
    // and update using the api 
    SetLocalTime(ref systNew);

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 6
    Points
    6
    Par défaut merchiii
    Merci Graffito je vais tester
    euh mais tu aurais une astuce pour que ça marche aussi sur linus avec mono stp???
    (apparamment ce que tu m'a donné ne passe que sur windows car c'est une appli windows ou un truc du genre)...

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Pour Linux,

    Tu peux lancer l'exécution de la commande LINUX date, soit par exemple :
    date -s "2 OCT 2006 18:00:00"
    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
    protected virtual bool RunCommand( string szCmd, string szArgs, int wait )
    {
    if( szCmd == null ) return false;
    System.Diagnostics.Process myproc = new System.Diagnostics.Process( );
    myproc.EnableRaisingEvents = false;
    myproc.StartInfo.FileName = szCmd;
    myproc.StartInfo.Arguments = szArgs;
    if( myproc.Start( )  )
    {
    //Using WaitForExit( ) allows for the host program
    //to wait for the command its executing before it continues
    if( wait == 1 ) myproc.WaitForExit( );
    else myproc.Close( );
    return true;
    }
    else return false;
    }
    



  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 6
    Points
    6
    Par défaut re...merci lol ^^
    cc et encore merci,
    dans un terminal date -s " ... ",marche à merveille mais pour ce qui est du code j'ai encore un petit souci, tu peux m'aider stp?
    Enfait j'ai un peu tout essayé comme argument mais je sèche toujours pour l'appel de la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RunCommand(string,string,int)
    c'est à dire que j'ignore quoi mettre comme string (1) et string (2) pour que ça fonctionne

  6. #6
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Essaye :
    RunCommand("date","-s ""2 OCT 2006 18:00:00""",0) ; // sans wait
    // ou
    RunCommand("date","-s ""2 OCT 2006 18:00:00""",1) ; // avec wait

  7. #7
    Membre émérite
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Points : 2 331
    Points
    2 331
    Par défaut
    Attention à l'échappement des chaines
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RunCommand("date","-s \"2 OCT 2006 18:00:\"",1)

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 6
    Points
    6
    Par défaut YES!!!!!
    ça marche!!!!!!!!!!!!merci pour le coup de main les gars c'est trop sympa

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/03/2014, 23h31
  2. Réponses: 1
    Dernier message: 06/12/2006, 20h59
  3. Comment écrire sur le port parallèle ?
    Par trax44 dans le forum Assembleur
    Réponses: 11
    Dernier message: 21/08/2005, 22h53
  4. [TrichEdit] Comment écrire sur 2 colonnes ?
    Par petitcoucou31 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 20/08/2005, 22h15
  5. Comment écrire sur une image, dans un cadre ?
    Par Nutrino dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 20/05/2005, 00h55

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