Modifier une valeur du registre

cs_LycanOSX Messages postés 58 Date d'inscription mardi 21 septembre 2010 Statut Membre Dernière intervention 14 juillet 2013 - 11 déc. 2012 à 22:30
NHenry Messages postés 15120 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 19 mai 2024 - 31 déc. 2012 à 16:18
Bonjour tout le monde! Je travaille actuellement sur un logiciel capable de modifier le fond d'écran de démarrage, pour que Windows "autorise" la modification du fond d'écran, il me faut changer cette valeur DWord 32 bits du registre:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background\OEMBackground
Il faut que le logiciel passe cette valeur en une valeur hexadécimale égale à 1. Un petit screen:
Voir le screen
Donc voilà les 2 codes que j'ai essayé:

My.Computer.Registry.SetValue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background", "OEMBackground", "1", Microsoft.Win32.RegistryValueKind.DWord)

et ce code pour le faire via le cmd:
Shell("reg add ""HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background"" /v ""OEMBackground"" /t ""REG_DWORD"" /d ""1"" /f")

Et je n'ai pas oublié de mettre ça au début du code:
Imports Microsoft.Win32


Donc normalement, ces codes doivent changé la valeur du registre demandé en une hexadécimale égale à 1. Le code s’exécute sans erreurs, mais quand je regarde avec RegEdit, la valeur n'a pas changé. Alors je ne comprend pas, j'ai peut être oublié quelque chose dans mon code, mais je ne sait vraiment pas quoi! Quelqu'un pourrait il m'aider s'il vous plait? Je suis vraiment bloqué! Merci infiniment!

5 réponses

NHenry Messages postés 15120 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 19 mai 2024 159
16 déc. 2012 à 22:44
Bonjour,

Est-ce que ton programme s’exécute avec les droits d'administrateur ?

v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
2
cs_LycanOSX Messages postés 58 Date d'inscription mardi 21 septembre 2010 Statut Membre Dernière intervention 14 juillet 2013 3
16 déc. 2012 à 23:48
Oui, le programme s'éxecute bien en tant qu'administrateur, je n'ai pas oublié. Merci.
1
cs_LycanOSX Messages postés 58 Date d'inscription mardi 21 septembre 2010 Statut Membre Dernière intervention 14 juillet 2013 3
28 déc. 2012 à 19:14
Oui les valeurs sont bien modifier quand je le fait manuellement.
1
NHenry Messages postés 15120 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 19 mai 2024 159
31 déc. 2012 à 16:18
Bonjour,

Désolé, mais je ne vois pas pourquoi Regedit peut modifier cette clé et pas ton programme.

v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15120 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 19 mai 2024 159
23 déc. 2012 à 03:24
Bonjour,

Est-ce que ces valeurs sont modifiées quand tu le fait à la main ?
Sinon, parfois les options de .NET peuvent bloquer certaines actions, mais dans ton cas, je ne vois pas pourquoi ce serait bloqué.

v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
0
Rejoignez-nous