Ecrire dans le registre windows 7 en c [Résolu]

Messages postés
3
Date d'inscription
mercredi 19 octobre 2011
Dernière intervention
22 octobre 2011
- - Dernière réponse : kirbydu94
Messages postés
3
Date d'inscription
mercredi 19 octobre 2011
Dernière intervention
22 octobre 2011
- 22 oct. 2011 à 02:00
Bonjour,

je souhaiterais développer un logiciel me permettant d'écrire dans le registre en c.
Cependant j'aimerais écrire dans le répertoire précis
//HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run

Voici mon code source:

HKEY key;
TCHAR s[] = TEXT("monProg.exe");
RegCreateKeyEx(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run"), 0, NULL, 0, KEY_ALL_ACCESS, NULL,&key, NULL );
RegSetValueEx(key, TEXT("index"), 0, REG_SZ, (LPBYTE)s, (DWORD)sizeof(s)/sizeof(s[0]));
RegCloseKey(key);

Comme vous le voyez ce code me permetterais de lancer le programme monProg.exe au démarrage. Je compile, le logiciel se lance correctement mais quand j'ouvre le registre manuellement rien n'a changer dans le répertoire //HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run

Je demande donc votre aide pour savoir si ce que je demande est possible.
J'ai lu sur le net que cela venait des droits.

Pouvez vous donc m'aidez a résoudre mon problème?

Merci
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
3
Date d'inscription
mercredi 19 octobre 2011
Dernière intervention
22 octobre 2011
3
Merci
Je suis effectivement en version 64bits mais j'ai rempli mon but de départ : je lance mon prog.exe au démarrage de windows mais seulement l'utilisateur courant mais ça me convient . Merci pour votre aide. BruNes c'est quoi Registry Virtualization ?Ca se trouve où (si j'ai le temps je jeterai un coup d'oeil).

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de kirbydu94
Messages postés
788
Date d'inscription
mardi 8 juillet 2003
Dernière intervention
8 mars 2017
6
0
Merci
Bonjour,
En premer lieu tu peux récupérer les erreurs retournées par les fonctions RegCreateKeyEx et suivantes afin de confirmer tes soupçons.
Quelques idées sur cette page :
http://social.msdn.microsoft.com/Forums/en-AU/windowscompatibility/thread/073349b1-0f29-41ef-aaab-dbb262d52457

Bon codage.


louis
Commenter la réponse de cs_louis14
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Dernière intervention
7 novembre 2014
34
0
Merci
Commence par lancer ton prog en mode ADMIN, c'est le minimum pour écrire sur HKLM.

ciao...
BruNews, MVP VC++
Commenter la réponse de BruNews
Messages postés
3
Date d'inscription
mercredi 19 octobre 2011
Dernière intervention
22 octobre 2011
0
Merci
Je lance justement mon programme avec les droits administrateur.

J'ai déjà essayer la fonction RegCreateKeyEx sur le répertoire HKEY_CURRENT_USER et ça passait sans soucis. Mais quand je le fais sur HKEY_LOCAL_MACHINE la il y a soucis .
Commenter la réponse de kirbydu94
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Dernière intervention
7 novembre 2014
34
0
Merci
Tu ne serais pas en 64 bits ?
Regarde "Registry Virtualization".

ciao...
BruNews, MVP VC++
Commenter la réponse de BruNews

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.