[Ex] modifier base de registre d'un ordinateur distant

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

[Ex] modifier base de registre d'un ordinateur distant

#1

Message par Yogui »

Remarque : Cette exemple ne s'applique que pour des postes en domaine.

Pour les besoins du travail j'ai eu besoin de modifier plusieurs clef de registre sur les ordinateurs de mon domaine un des pré requis était qu'il ne fallait rien installer sur les postes cibles.

Je me suis tourné vers WMI pour trouver cette solution :

Dans cette exemple je modifie le nom de connexion par défaut d'une machine distante

Code : Tout sélectionner


Const $HKEY_LOCAL_MACHINE = 0x80000002  ; déclaration de la constante du premier nœud cf plus bas

$strComputer = Nomdelamachinecible  ;IP ou nom de la machine cible

$objReg = ObjGet("winmgmts://" & $strComputer &  "/root\default:StdRegProv")
$strKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
$ValueName = "DefaultUserName"
$strvalue = ""
$return = $objReg.GetStringValue($HKEY_LOCAL_MACHINE,$strKeyPath,$ValueName,$strValue)

If $strValue= "" Then
    msgbox(0,"WMIGetStringTest", " introuvable ou null.")
Else
    msgbox(0,"WMIGetStringTest","valeur de la clef: " & @CRLF & $strValue)
EndIf

$soluce = $objReg.SetStringValue($HKEY_LOCAL_MACHINE,$strKeyPath, "DefaultUserName","Yogui")

 $objReg.GetStringValue($HKEY_LOCAL_MACHINE,$strKeyPath,$ValueName,$strValue)

 If $strValue= "" Then
    msgbox(0,"WMIGetStringTest", " introuvable ou null.")
Else
    msgbox(0,"WMIGetStringTest","valeur de la clef: " & @CRLF & $strValue)
EndIf

 
Après plusieurs test il semble de la propriété SetStringValue de l'objet n'accepte pas de variables pour ValueName et pour strvalue (nom de la clef et valeur de la clef)
0x80000000 HKEY_CLASSES_ROOT
0x80000001 HKEY_CURRENT_USER
0x80000002 HKEY_LOCAL_MACHINE
0x80000003 HKEY_USERS
0x80000005 HKEY_CURRENT_CONFIG
0x80000006 HKEY_DYN_DATA
J'espère que ça pourra servir un jour à l'un d'entre nous
Avatar du membre
karl789
Niveau 3
Niveau 3
Messages : 30
Enregistré le : jeu. 23 févr. 2012 13:28
Status : Hors ligne

Re: [Ex] modifier base de registre d'un ordinateur distant

#2

Message par karl789 »

Merci beaucoup pour ce petit TUTO, je suis justement sur le point de créer un script qui serai capable de modifier un registre distant.

Merci
Google est partout, On peut s'adresser à Google, mais celui-ci répond rarement. Avec Google, "quiconque demande, reçoit ; et celui qui cherche, trouve" tel qu'il est écrit dans l'Evangile. Bref GOOGLE est un Dieu
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

Re: [Ex] modifier base de registre d'un ordinateur distant

#3

Message par jl56 »

Bonjour

Je cherche également le moyen de modifier le registre mais d'un disque en ligne, je m'explique
lors de crash de serveur je restaure ma sauvegarde ( wbadmin ) sur un autre matériel
et parfois écran bleu au reboot car les cartes disques sont différentes

Donc je démarre avec un WIN CE sur une clé USB et je lance un outils pour modifier le registre du disque c: ( mettre une valeur à 0 ) et ce sur 20 à 60 lignes.

je pensais pouvoir gérer cela avec autoit mais comment indiquer de lire le disque system sur c: et non
le disque de boot ( ma clé USB en x: )

Avez vous SVP une suggestion

Merci

JL56
ps: heureusement les serveurs ne crach pas souvent, mais dans ces situations tu dois réagir vite et bien
Avatar du membre
karl789
Niveau 3
Niveau 3
Messages : 30
Enregistré le : jeu. 23 févr. 2012 13:28
Status : Hors ligne

Re: [Ex] modifier base de registre d'un ordinateur distant

#4

Message par karl789 »

En autoit cela doit etre possible je suis entrin de faire plein de modif à cette exemple pour pouvoir modifier 5 ligne d'un seul coup puis de leur remettre leur config après mais désole de débute dans ce language.

Peut etre en créant un *.reg copier sur votre system de votre clef usb en lui indiquant les valeur a modifier.

Peut etre taper un petit regedit, et voir si il détecte déjà votre registre c:

Ou bien en pasant par cmd " avec la commande reg add "


Votre problème est assez particulier la question est a creuser.
Google est partout, On peut s'adresser à Google, mais celui-ci répond rarement. Avec Google, "quiconque demande, reçoit ; et celui qui cherche, trouve" tel qu'il est écrit dans l'Evangile. Bref GOOGLE est un Dieu
Répondre