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 :

Base de registre HKEY_CURRENT_USER


Sujet :

Langage Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 44
    Points
    44
    Par défaut Base de registre HKEY_CURRENT_USER
    Bonjour à tous

    Me voici encore en pleine galère avec l'écriture dans la base de registre HKEY_CURRENT_USER. Le programme fonctionnait correctement sous windows XP et je pensais que sous Windows 7, on pouvait également écrire dans la base de registre HKEY_CURRENT_USER sans aucun problème.

    Quand je compile mon programme, il m'affiche en fin de compilation "impossible de créer le processus. L'opération demandée nécessite une élévation" et le programme ne se lance pas !

    Quelqu'un aurait-il une idée d'où cela provient ?

    Je vous remercie par avance de votre réponse !

    Bonne journée à tous

    Laurent CUSSAC

  2. #2
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 459
    Points : 3 090
    Points
    3 090
    Par défaut
    Des modifications au niveau des options de projet ?
    Ajout d'un manifest au ressources ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 44
    Points
    44
    Par défaut suite
    Bonjour

    Merci beaucoup pour votre réponse !

    C'est exactement le même programme qui marchait sous windows XP avec HKEY_CURRENT_USER ! je n'ai rien modifié au programme.

    Vous me parlez d'un manifest : je ne sais pas du tout ce que c'est ? pourriez vous m'en dire plus s'il vous plait ?

    En vous remerciant par avance de votre réponse, je vous souhaite une bonne fin de journée

    Laurent CUSSAC

  4. #4
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 459
    Points : 3 090
    Points
    3 090
    Par défaut
    Reprenons depuis le début !

    On parle bien de compilation et PAS d'exécution ??

    Sinon, on pourrait comprendre que le projet était créé dans une certaine version de Delphi à l'origine sous XP puis que le projet a été ensuite porté dans un autre Delphi sur un OS Windows 7 !

    Un manifest est un fichier que l'on ajoute à un projet pour lui octroyer certains droits en fonction d'une demande d'élévation de privilèges si l'UAC est activée sur Windows vista et +.

    Quel est le statut du compte windows sur la machine qui pose problème ? Admin ? Utilisateur simple ? Utilisateur avec pouvoir ? Simple invité ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 44
    Points
    44
    Par défaut
    Merci beaucoup pour votre réponse !

    Alors prenons vos questions une par une :

    On parle bien de compilation et PAS d'exécution ??
    => en fait, je viens de le vérifier, la compilation se passe bien mais l'exécution ne fonctionne pas : l'écran reste sur l'éditeur de delphi et le message impossible de créer le processus apparaît. Voir pièce jointe pour la photo écran.

    Quel est le statut du compte windows sur la machine qui pose problème ? Admin ? Utilisateur simple ? Utilisateur avec pouvoir ? Simple invité ?

    Statut d'utilisateur simple !

    Comment faire alors pour insérer ce fichier manifest pour pouvoir lire et écrire dans la base de registre HKEY_CURRENT_USER ?

    Merci beaucoup par avance de votre réponse.

    Je vous souhaite une bonne fin de journée

    Laurent CUSSAC
    Images attachées Images attachées  

  6. #6
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 459
    Points : 3 090
    Points
    3 090
    Par défaut
    Il doit y avoir un problème ailleurs. Je viens de tester le code suivant dans une session ouverte avec un compte utilisateur sans pouvoir, et ça passe sans problème.

    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
     
    uses Registry;
     
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Reg: TRegistry;
    begin
      Reg := TRegistry.Create;
      try
        Reg.RootKey := HKEY_CURRENT_USER;
        if Reg.OpenKey('\Software\TestDroits', True) then
        begin
          Reg.WriteString('test','test');
          Reg.CloseKey;
        end;
      finally
        Reg.Free;
        inherited;
      end;
    end;
    Là, le problème est bien mystérieux.

    Il y a bien un compte admin sur le poste ? Il faudrait essayer de lancer delphi en mode admin pour voir si ça fait une différence.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 44
    Points
    44
    Par défaut
    Bonsoir

    Effectivement problème très épineux !

    J'ai mis tout le code en commentaires, et le message perdure !

    Je vais créer une nouvelle application en dupliquant le contenu de la fenêtre pour voir ce que cela donne ! je vous tiens au courant !

    En tout cas merci pour votre aide précieuse !

    Bonne soirée ou bonne journée à vous

    Laurent CUSSAC

  8. #8
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 754
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 754
    Points : 13 340
    Points
    13 340
    Par défaut
    Renomme ton programme pour qu'il ne contienne pas : install, setup, etc. En l'absence de RequestExecutionLevel dans le manifest, ces termes dans le nom du fichier entraînent automatiquement une demande d’élévation

  9. #9
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 459
    Points : 3 090
    Points
    3 090
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    Renomme ton programme pour qu'il ne contienne pas : install, setup, etc. En l'absence de RequestExecutionLevel dans le manifest, ces termes dans le nom du fichier entraînent automatiquement une demande d’élévation
    Même sur un Delphi 6 ???

  10. #10
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 754
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 754
    Points : 13 340
    Points
    13 340
    Par défaut
    Citation Envoyé par Papy214 Voir le message
    Même sur un Delphi 6 ???
    Surtout sur les anciennes versions et plus généralement sur tout EDI antérieurs à Vista (Delphi ou autres) puisque l'UAC et requestedExecutionLevel ne sont apparus qu'à ce moment-là

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 44
    Points
    44
    Par défaut
    Bonjour à tous

    Je viens de trouver l'origine de mon erreur : tout nom de fichier ou d'application qui contient le mot install crée ce problème ( mon nom de projet était InstallProgramme ) !! C'est fou non !

    Merci à tous de votre aide précieuse et bonne journée

    Laurent CUSSAC

  12. #12
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 871
    Points : 11 361
    Points
    11 361
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par ninaleo
    Je viens de trouver l'origine de mon erreur
    J'aurais plutôt écrit "Andnotor avait raison : l'erreur venait bien du nom de mon programme qui contenait install".

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 111
    Points : 44
    Points
    44
    Par défaut
    Oui tout à fait !!!

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

Discussions similaires

  1. Recherche en base de registre
    Par Pomalaix dans le forum Langage
    Réponses: 7
    Dernier message: 01/08/2012, 10h58
  2. [Windows]accès base de registre windows
    Par Greg01 dans le forum API standards et tierces
    Réponses: 27
    Dernier message: 05/06/2007, 15h14
  3. Accès à la base de registre windows à distance
    Par xavame dans le forum Sécurité
    Réponses: 4
    Dernier message: 13/07/2005, 15h23
  4. base de registre et connexion a internet
    Par nonosoft dans le forum C++
    Réponses: 2
    Dernier message: 17/04/2003, 21h04
  5. Utilisez vous la base de registres ?
    Par gRRosminet dans le forum C++Builder
    Réponses: 8
    Dernier message: 04/06/2002, 13h55

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