Script qui permet d'ajouter une valeur dans la base de registre

flasher_13 Messages postés 55 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 2 avril 2012 - 13 mars 2005 à 11:29
cs_Pingouin Messages postés 262 Date d'inscription lundi 26 août 2002 Statut Membre Dernière intervention 24 août 2005 - 13 mars 2005 à 21:00
Bonjour!, je voudrai savoir comment faire un script en Visual Basic qui créer une Valeur Chaîne dans la base de registre si ont entre le chemin de celui-ci, le nom de cette valeur et la donnée sans passer par Regedit?
Je pense que c'est faisable plusque VB va chercher des données dans la base de registre.

A+
,T0m@ck.

Mon Site:</gras>
http://www.tomack.fr.st

6 réponses

cs_algori Messages postés 868 Date d'inscription dimanche 26 décembre 2004 Statut Membre Dernière intervention 26 février 2008 1
13 mars 2005 à 12:12
Je connais juste en VBScript. Voici le code s'y ça t'intéresse :
Set sh = CreateObject("WScript.shell")
sh.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\coucou", "C:\coucou.vbs", "REG_SZ"
@++
0
flasher_13 Messages postés 55 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 2 avril 2012
13 mars 2005 à 12:49
Merci algori, déjà ça m'a avancé, mais ça !, je suis allé vérifier au chemin il y a rien?!

Quelqu'un ne connait pas un autre moyen?

En tout cas ici les réponses sont rapides lol!!!
A+
,T0m@ck.

Mon Site:</gras>http://www.tomack.fr.st
0
cs_Pingouin Messages postés 262 Date d'inscription lundi 26 août 2002 Statut Membre Dernière intervention 24 août 2005
13 mars 2005 à 13:50
Salut,



Bon déjà juste un truc : évite de décorer comme ca tes messages c'est pas forcément plus agréable à lire...

Sinon le mieux c'est de passer par les API pour accéder à la base de registre



Private Declare Function RegCreateKey Lib "advapi32.dll" Alias
"RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String,
phkResult As Long) As Long

Private Declare Function RegDeleteKey Lib "advapi32.dll" Alias
"RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long



Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias
"RegDeleteValueA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long



Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias
"RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String,
ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal
cbData As Long) As Long



Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long





Et pour ton cas précis pour écrire une valeur :



Dim Win As String

Dim lHkey As Long



RegOpenKey &H80000002, "Software\Microsoft\Windows\CurrentVersion\Run", lHkey

RegSetValueEx lHkey, "Nom de la valeur", 0&, 1, ByVal "Contenu de la valeur", Len("contenu de la valeur")

RegCloseKey lHkey


Tu trouveras des tas d'autres exemples sur ce site. (notamment pour récupérer une valeur dans la base de registre)



Liste des constantes renvoyant à une clé racine :

"hkey_classes_root" : &H80000000

"hkey_current_user" : &H80000001

"hkey_local_machine" : &H80000002

"hkey_users" : &H80000003

"hkey_dyn_data" : &H80000004


The Pingouin
0
cs_algori Messages postés 868 Date d'inscription dimanche 26 décembre 2004 Statut Membre Dernière intervention 26 février 2008 1
13 mars 2005 à 15:19
flasher_13 >>> T'es sûr ??? Ca marche très bien chez moi !
Est-ce que t'as bien mis les instructions dans un fichier .vbs ?
Je te rappelle que les commandes que je t'ai donné sont du VBScript et non du VB pur.
@++ et bonne prog !
0

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

Posez votre question
flasher_13 Messages postés 55 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 2 avril 2012
13 mars 2005 à 18:46
Oui ''algori'' j'avais pas fait attention, ton script marche bien, et merci aussi ''Pingouin'' pour tes explications
PS: j'ai pris conseil pour la déco lol!!
A+
,Tomack
0
cs_Pingouin Messages postés 262 Date d'inscription lundi 26 août 2002 Statut Membre Dernière intervention 24 août 2005
13 mars 2005 à 21:00
Oui je vois ca lol !! C'est pas plus mal kanm^m.

Content d'avoir pu aider. Pense a accepter la ou les réponses qui t'ont
aider pour permettre a ceux ki cherchent dans le forum ce genre de
conseils les trouvent plus facilement.



@+

The Pingouin
0
Rejoignez-nous