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

kirbydu94 3 Messages postés mercredi 19 octobre 2011Date d'inscription 22 octobre 2011 Dernière intervention - 19 oct. 2011 à 04:11 - Dernière réponse : kirbydu94 3 Messages postés mercredi 19 octobre 2011Date d'inscription 22 octobre 2011 Dernière intervention
- 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
kirbydu94 3 Messages postés mercredi 19 octobre 2011Date d'inscription 22 octobre 2011 Dernière intervention - 22 oct. 2011 à 02:00
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).

Merci kirbydu94 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 68 internautes ce mois-ci

Commenter la réponse de kirbydu94
cs_louis14 788 Messages postés mardi 8 juillet 2003Date d'inscription 8 mars 2017 Dernière intervention - 19 oct. 2011 à 09:04
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
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 19 oct. 2011 à 11:21
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
kirbydu94 3 Messages postés mercredi 19 octobre 2011Date d'inscription 22 octobre 2011 Dernière intervention - 21 oct. 2011 à 02:23
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
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 21 oct. 2011 à 09:18
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.