Ecriture dans la base de registre d'un ordinateur distant

Contenu du snippet

Au départ, il s'agissait de corriger une erreur de DNS dans certains journaux d'évènements de machines du réseau (ID 40961, Requête DNS pour prisoner.iana.org).
En fait il fallait passer sur chaque machine pour ajouter ou modifier cette clé du registre.
J'aurais pu le faire par GPO mais j'ai choisi l'option VBScript, plus intéressante.
Donc voici le correctif de cette erreur (merci Microsoft) et par la même occasion le moyen de voir comment on accède au registre de la machine distante.
Je vais écrire une valeur dans le registre et vérifier qu'elle existe.

Source / Exemple :


'=====================================
' Constantes de l'arbre du registre
'-------------------------------------
' HKEY_CLASSES_ROOT 	= &H80000000
' HKEY_CURRENT_USER 	= &H80000001
' HKEY_LOCAL_MACHINE 	= &H80000002
' HKEY_USERS 		= &H80000003
' HKEY_CURRENT_CONFIG 	= &H80000005
'=====================================

'----------------------------------
'Ecriture dans le registre distant
'----------------------------------

HKEY_LOCAL_MACHINE = &H80000002
strComputer = "NomDuPc"
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\"
objReg.CreateKey HKEY_LOCAL_MACHINE, strKeyPath
ValueName = "DisableReverseAddressRegistrations"
dwValue = 1
objReg.SetDWORDValue HKEY_LOCAL_MACHINE, strKeyPath, ValueName, dwValue

'----------------------------------
'Lecture dans le registre distant
'----------------------------------

HKEY_LOCAL_MACHINE = &H80000002
strComputer = "NomDuPc"
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "SYSTEM\CurrentControlSet\Services\Tcpip\Parameters"
ValueName = "DisableReverseAddressRegistrations"
objReg.GetDWORDValue HKEY_LOCAL_MACHINE, strKeyPath, ValueName, strValue
If IsNull(strValue) Then
    Wscript.echo "valeur de la clé:  La valeur est nulle ou ne peut pas être trouvé"
Else
    Wscript.echo "valeur de la clé: ", strValue
End If

Conclusion :


Je n'ai pas plus commenté la source que ça mais jepense que c'est assez explicite...
J'attends vos commentaires.
Merci

A voir également

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.