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

Langage Delphi Discussion :

Problème lecture clef de registre


Sujet :

Langage Delphi

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 36
    Par défaut Problème lecture clef de registre
    Bonjour,


    J'ai écrit une procédure qui lit une clef de registre et vérifie si la valeur est juste.
    Les paramètres passées sont :
    Param[1]: le Root (=HKEY_LOCAL_MACHINE)
    Param[2]: le chemin de la clef (='SOTFWARE\Microsoft\Windows\CurrentVersion')
    Param[3]: le nom de la valeur (='RegDone')
    Param[4]: le type (='String')
    Param[5]: la valeur (='1')


    Le problème c'est que la ligne reg.Openkey ne passe pas, il renvoie false et zappe les conditions if, etc...
    J'ai même essayé avec le paramètre true (créé la clef si existe pas)
    Ça ne passe pas plus.
    Avez-vous une idée de ce qui se passe?
    C'est comme si je ne pouvais pas accéder à ma BdR...


    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
    //créé la clef
            Reg:=TRegistry.Create;
            //définit la clef principale
            Reg.RootKey:=StrToHKEY(Param[1]);
            //ouvre la clef
            if Reg.OpenKey(Param[2],True) then
              //prend la valeur et compare
              if Reg.ValueExists(Param[3]) then
                if (Param[4]='Int') or (Param[4]='DWord') then
                  if Reg.ReadInteger(Param[3])=StrToInt(Param[5]) then
                      Etat[Num]:=1
                  else
                    if Param[4]='Str' then
                      if Reg.ReadString(Param[3])=Param[5] then
                        Etat[Num]:=1;
            //ferme la clef
            Reg.CloseKey;
            //libère la variable
            Reg.Free;

  2. #2
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Salut,

    Juste une petite question ... Peux-tu nous montrer la déclaration de la procédure.
    Pareillement, la fonction StrToHKEY c'est toi qui l'as créé ? Tu peux nous montrer le code de cette fonction ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 36
    Par défaut
    Je ne sais pas pourquoi mais maintenant il a l'air d'opener les key...
    J'y comprends plus rien.
    J'ai juste redémarré.
    Est-ce que les crach CPU successifs peuvent bloquer le prog?

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/10/2007, 18h47
  2. [communication série] problème lecture/écriture
    Par davinout dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 01/06/2005, 13h14
  3. Problème lecture fichier en C++
    Par cali1983 dans le forum C++
    Réponses: 17
    Dernier message: 20/05/2005, 09h36
  4. Problème lecture de nombre dans un fichier en c++
    Par knecmotet dans le forum C++
    Réponses: 1
    Dernier message: 28/10/2004, 15h48
  5. problème de lecture base de registre
    Par pafounet3 dans le forum MFC
    Réponses: 10
    Dernier message: 31/12/2003, 14h06

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