Clé de registre Windows 7 64 bits [Résolu]

Signaler
Messages postés
67
Date d'inscription
mercredi 5 mai 2010
Statut
Membre
Dernière intervention
20 mai 2011
-
ccito
Messages postés
67
Date d'inscription
mercredi 5 mai 2010
Statut
Membre
Dernière intervention
20 mai 2011
-
Bonjour,

J'utilise l'instruction suivante pour écrire une clé de registre:

My.Computer.Registry.LocalMachine.CreateSubKey("SOFTWARE\AAA")

Cette instruction fonctionne correctement sous windows XP 32 bits mais pas sous windows 7 64 bits.

Il semble qu'il y ai un problème d'autorisation.

Je développe sous VB2010 Express.

Aurriez-vous des exemples pour manuipuler les clé de registre dans cette version de windows.

Merci d'avance

5 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
33
Il faut que tu demande une élévation de privilèges pour ton logiciel.

Plusieurs pistes :
Au niveau de Windows avec l'option "Executer en tant qu'administrateur" à chaque lancement, soit dans les propriétés de l'exécutable pour fixer cette option de façon pérène.

Au niveau de ton logiciel en agissant sur le manifest. Depuis les propriétés de ton projet, tu ouvre l'onglet Application puis tu clique sur "Afficher les paramètres UAC"
Dans le fichier qui s'ouvre, tu repère la ligne
        <requestedExecutionLevel level="asInvoker" uiAccess="false" />
et tu la remplace par
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />


Tu enregistre et tu recompile tout.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Messages postés
2811
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
26 novembre 2013
23
En effet, pour écrire dans le registre, le logiciel doit être exécuté en tant qu'administrateur.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
33
Précisions : Pour pouvoir debugger directement dans VS un programme qui nécessite une élévation de droit, VS doit lui-même, être au préalable lancer avec l'option "Exécuter en tant administrateur"


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Messages postés
67
Date d'inscription
mercredi 5 mai 2010
Statut
Membre
Dernière intervention
20 mai 2011
1
Merci a vous pour vos réponses.

Effectivement en executant le programme en tant qu'administrateur l'écriture des clé se passe correctement.

casy ce que tu me propose en modifiant le manifest semble être la solution que je recherche. Cependant le message d'erreur suivant est générer :

Erreur	1	ClickOnce ne prend pas en charge le niveau d'exécution de la demande 'requireAdministrator'.

Qu'est-qu'on entend par "ClickOnce" ?

Y-a-t-il un paramètre a corriger ?
Messages postés
67
Date d'inscription
mercredi 5 mai 2010
Statut
Membre
Dernière intervention
20 mai 2011
1
Ok j'ai trouvé.

Dans les propiétés du projet, dans l'onglet "Sécurité" j'ai désactivé l'option "Activer les paramètres de sécurité ClickOnce" et ça marche.

Encore merci.