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

Delphi Discussion :

Base de registre vista


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2004
    Messages : 149
    Points : 69
    Points
    69
    Par défaut Base de registre vista
    Hello,

    J'ai un petit prob de compatibilité avec mon prog et vista.

    C'est au niveau de la base de registre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    with TRegistry.Create do
      begin
        try
          RootKey := HKEY_LOCAL_MACHINE;
          OpenKey('System\CurrentControlSet\Services\XXXXXX', False);
          st := TstringList.Create;
          GetValueNames(st);
    st.count vaut tjs zéro sur vista alors que sur xp pas de problème cela fonctionne sans prob, il me détecte mes valuenames.

    Quelqu'un peut-il me dire ce qui se passe ?

    A+

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 612
    Points : 25 303
    Points
    25 303
    Par défaut
    Vista ajoute un grand nombre de sécurité, et il est possible qu'il faille demander un token pour la lecture de la base de registre dans certaines clés ...

  3. #3
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Je pense tout comme Shai que c'est un problème de droits.
    Et en limitant l'accès en lecture, comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      with TRegistry.Create(HK_EXECUTE) do 
      // ...
    @+

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2004
    Messages : 149
    Points : 69
    Points
    69
    Par défaut
    Merci de votre aide mais

    HK_EXECUTE se trouve dans quel unit ?

  5. #5
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Oups, excuse-moi il s'agit de KEY_EXECUTE (inclus dans Windows.pas).

    @+

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Août 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2004
    Messages : 149
    Points : 69
    Points
    69
    Par défaut
    TRegistry.Create(KEY_READ)

    sorry mais c'est KEY_READ

    et en plus ca fonctionne !

    cool merci à vous

  7. #7
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    pour info:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      KEY_EXECUTE  =  KEY_READ and not SYNCHRONIZE;
    Donc a priori cela devrait fonctionner également.
    Mais puisque ca marche avec KEY_READ. Tant mieux !

    @+ Claudius

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

Discussions similaires

  1. [JNIReg] Base De Registre & Vista
    Par ggounouman dans le forum API standards et tierces
    Réponses: 10
    Dernier message: 29/12/2010, 16h46
  2. nettoyage base de registre vista
    Par micess dans le forum Windows Vista
    Réponses: 3
    Dernier message: 14/05/2008, 20h47
  3. base de registre sous vista
    Par Maitre Dragon dans le forum C++Builder
    Réponses: 7
    Dernier message: 23/06/2007, 10h04
  4. [VB]Base de registre, UAC et Windows Vista
    Par cd090580 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 12/04/2007, 19h38
  5. Vista et la base de registres
    Par Trap D dans le forum Windows
    Réponses: 1
    Dernier message: 25/03/2007, 18h47

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