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

EDI Delphi Discussion :

Problème de lecture des registres avec windows 2000


Sujet :

EDI Delphi

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2002
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Problème de lecture des registres avec windows 2000
    Bonjour,

    J'ai une application faites avec Delphi 3 qui fonctionnait très bien jusqu'à ce que je la test sur un poste Windows 2000 en utilisant un utilisateur ne faisant pas parti du groupe Administrateur.

    Lorsque j'utilise cet utilisateur, Delphi n'est pas capable d'ouvrir les clés de registre se trouvant dans 'HKEY_LOCAL_MACHINE\SOFTWARE\'.

    Pourtant si j'y vais directement avec regedit je peux ouvrir et même modifier ces clés avec ce même utilisateur.

    Est-il possible de lire ou modifier la base de registre via Delphi avec un utilisateur qui n'est pas administrateur?

    Merci.

  2. #2
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Oui c'est possible, mais seulement HKEY_CURRENT_USER...

    Essaye d'écrire avant de lire, tu t'es pitet gourré dans le nom de la clé que tu cherches à lire.

  3. #3
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    C'est un problème de droits d'accès. Les clés de la base de registres sont comme des fichiers, on peut y accéder en lecture ou en écriture. Pour ne pas avoir de problème, il faut préciser la propriété Access avant l'ouverture de la clé. Par défaut cette propriété est positionnée à KEY_ALL_ACCESS (lecture, écriture, etc):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      reg:= TRegistry.Create;
      reg.Access:= KEY_READ;
    A noter : on peut également préciser cette valeur à la création de la clé depuis peu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      reg:= TRegistry.Create(KEY_READ);

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2002
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [Résolue]Problème de lecture des registres avec windows 2000
    Delphi ne semble pas reconnaître la propriété 'access'. Peut-être que je n'utilise pas la bonne librairie ou elle n'est simplement pas disponible avec Delphi 3.

    J'ai utilisé HKEY_CURRENT_USER et tout semble bien fonctionner.

    Merci

  5. #5
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    Effectivement, il me semble qu'il s'agissait d'un "bug" corrigé dans les versions suivantes de Delphi. Le composant TRegistry ouvrait toutes les clés en mode lecture-ecriture. Ce qui pose effectivement problème lorsque celles-ci sont vérouillées.
    En principe tu ne devrais en effet plus avoir de problème en stockant tes données dans HKEY_CURRENT_USER car il est rare (et pratiquement inconcevable) qu'un administrateur réduise les droits sur cette branche.

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

Discussions similaires

  1. Lecture du registre avec Windows 7 x64
    Par leSeb dans le forum VB.NET
    Réponses: 5
    Dernier message: 28/11/2012, 18h49
  2. Réponses: 1
    Dernier message: 21/03/2007, 16h43
  3. ADSI avec windows 2000
    Par alex2205 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 25/03/2003, 16h59
  4. [VB6] Gestionnaire des tache de windows 2000 avec VB6
    Par Argonz dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 12/11/2002, 08h21

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