ECRITURE DANS LA BASE DE REGISTRE D'UN ORDINATEUR DISTANT

Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008 - 6 nov. 2007 à 15:10
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 - 21 oct. 2014 à 11:42
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/44625-ecriture-dans-la-base-de-registre-d-un-ordinateur-distant

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 344
21 oct. 2014 à 11:42
Bonjour,

1 - Tu parles de VBA ... hors ce snippet est en VBS ...;
Lorsque tu as écris ce code.. as tu ajouté la référence au VBscript dans ton projet VBA ?

2 - Si tu as un souci, vas plutôt poser ta question sur le forum que dans les commentaires de la sources.
Bonjour,
J'ai mis ça dans ma macro

HKEY_LOCAL_MACHINE = &H80000002
strComputer = strName
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "HKEY_LOCAL_MACHINE\SOFTWARE\Network Associates\ePolicy Orchestrator\Agent"
ValueName = "LoggedOnUser"
objReg.getStringValue HKEY_LOCAL_MACHINE, strKeyPath, ValueName, strValue
Cells(IntRow, "h").Value = strValue


Mais ma cellule h reste désespérément vide alors que je suis connecté sur le PC distant et qu'il est bien joignable depuis mon pc.
timalin Messages postés 3 Date d'inscription mercredi 30 août 2006 Statut Membre Dernière intervention 18 août 2009
26 juin 2009 à 13:54
Chez moi ca ne marche pas!
est-ce qu'il faut autoriser quelque chose comme la modification du registre à distance sur la machine cible ou quoi?
edpimi Messages postés 24 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 19 février 2015
6 oct. 2008 à 23:21
C'est bon j'ai trouvé
On peut lire les REG_SZ avec "objReg.getStringValue"
ca marche nikel!!
Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008
6 oct. 2008 à 17:21
Je crois de mémoire que l'on ne peut lire que des DWORD à distance (à vérifier)
Test en remplaçant DWORD par REG_SZ partout où il est présent mais je doute... Désolé
edpimi Messages postés 24 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 19 février 2015
6 oct. 2008 à 17:05
Oui mais moi je cherche à lire cle de valeur REG_SZ et toi dans ton script tu met "objReg.GetDWORDValue" . Donc quelle serait a ton avis
le bon script?
Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008
6 oct. 2008 à 12:50
strValue te renvoie la valeur de la clé que tu as inscrite dans le registre distant, à savoir "1"
edpimi Messages postés 24 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 19 février 2015
6 oct. 2008 à 10:26
Salut
Juste une question: que fais la variable strValue?
car a chaque fois j'ai le message :
=>La valeur est nulle ou ne peut pas être trouvé
alors que la cle de registre que je teste est présente sur le poste
Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008
29 sept. 2008 à 10:08
Aucun problème ;)
edpimi Messages postés 24 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 19 février 2015
29 sept. 2008 à 10:03
Désolé ton code est bon c'est moi qui n'était pas dans le bon domaine!!!
edpimi Messages postés 24 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 19 février 2015
29 sept. 2008 à 09:39
Merci pour le code mais j ai le message "permission refusée"
donc il doit manquer dans ton code les parametres de droit (compte admin)
Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008
12 févr. 2008 à 09:11
Administrateur réseau quoi... :D
pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
28 nov. 2007 à 18:43
merci de m'avoir répondu aussi vite mais en fait mon probleme venait surtout du fait que c'est du VBscipt et non pas du VB6 du coup ça me fait un reset de la machine appelée .....Mort De Rire je trop distrait !
Mais quel dommage c'était si beau en aussi peu de lignes!!!
moi qui suis un gros fainéant !!!!!
Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008
28 nov. 2007 à 16:44
Il n'y a rien à changer, le "GetObject" reste le même.
Je parle ici d'un réseau d'entreprise mais cela reste un réseau "privé", il n'est pas question de franchir internet.
pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
28 nov. 2007 à 14:49
Tres intéressant mais moi je ne cherche à lire la base de registre que d'une machine sur mon réseau privé je suppose que dans le "GetObject" il doit y avoir un peu de texte à changer ?
merci d'avance
Hitch16 Messages postés 78 Date d'inscription vendredi 4 février 2005 Statut Membre Dernière intervention 6 octobre 2008
6 nov. 2007 à 15:10
J'oubliais!
Vous allez me dire "il y a des répétitions entre l'ecriture et la lecture" et je répondrais : certes mais ça s'adresse aux débutants, permettant de bien montrer les étapes de lecture (get) et d'écritures (create). On peut couper le script en deux, faire ce qu'on veut d'ailleurs, servez-vous !!! ;)