Est-il possible de tester la présence d'un clé de bas de registre dans un
batch avec une commande du genre "if exist "hkey_local_machine ..."
Si oui, pouvez-vou m'indiquer la syntaxe de la commande ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Claude BELLAMY
Dominique Nalin s'est ainsi exprimé:
Est-il possible de tester la présence d'un clé de bas de registre dans un batch avec une commande du genre "if exist "hkey_local_machine ..." Si oui, pouvez-vou m'indiquer la syntaxe de la commande ?
Il faut utiliser (par exemple) un VBScript
"ExistKey.vbs" ------------- couper ici ------------- Set Shell = WScript.CreateObject("WScript.Shell") Set args = Wscript.Arguments If args.Count>0 Then Key=args(0) Else WScript.Quit 255 End If On Error Resume Next ReadKey=shell.RegRead(key) If err.number<>0 Then code=1 else code=0 Wscript.Quit code ------------- couper ici -------------
Ensuite, incorporer ce script dans le batch, en testant le code de retour (0= OK, 1=clef inexistante, 255 = pas de clef passée)
Exemple :
@echo off cscript ExistKey.vbs "HKLMSYSTEMCurrentControlSetControlProductOptionsProductype" if ERRORLEVEL 1 goto erreur echo La clef existe goto suite :erreur echo La clef n'existe pas :suite ...
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Dominique Nalin <dnalin@free.fr> s'est ainsi exprimé:
Est-il possible de tester la présence d'un clé de bas de registre
dans un batch avec une commande du genre "if exist
"hkey_local_machine ..." Si oui, pouvez-vou m'indiquer la syntaxe de
la commande ?
Il faut utiliser (par exemple) un VBScript
"ExistKey.vbs"
------------- couper ici -------------
Set Shell = WScript.CreateObject("WScript.Shell")
Set args = Wscript.Arguments
If args.Count>0 Then
Key=args(0)
Else
WScript.Quit 255
End If
On Error Resume Next
ReadKey=shell.RegRead(key)
If err.number<>0 Then code=1 else code=0
Wscript.Quit code
------------- couper ici -------------
Ensuite, incorporer ce script dans le batch, en testant le code de retour
(0= OK, 1=clef inexistante, 255 = pas de clef passée)
Exemple :
@echo off
cscript ExistKey.vbs
"HKLMSYSTEMCurrentControlSetControlProductOptionsProductype"
if ERRORLEVEL 1 goto erreur
echo La clef existe
goto suite
:erreur
echo La clef n'existe pas
:suite
...
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
Jean-Claude.Bellamy@wanadoo.fr * JC.Bellamy@free.fr
Est-il possible de tester la présence d'un clé de bas de registre dans un batch avec une commande du genre "if exist "hkey_local_machine ..." Si oui, pouvez-vou m'indiquer la syntaxe de la commande ?
Il faut utiliser (par exemple) un VBScript
"ExistKey.vbs" ------------- couper ici ------------- Set Shell = WScript.CreateObject("WScript.Shell") Set args = Wscript.Arguments If args.Count>0 Then Key=args(0) Else WScript.Quit 255 End If On Error Resume Next ReadKey=shell.RegRead(key) If err.number<>0 Then code=1 else code=0 Wscript.Quit code ------------- couper ici -------------
Ensuite, incorporer ce script dans le batch, en testant le code de retour (0= OK, 1=clef inexistante, 255 = pas de clef passée)
Exemple :
@echo off cscript ExistKey.vbs "HKLMSYSTEMCurrentControlSetControlProductOptionsProductype" if ERRORLEVEL 1 goto erreur echo La clef existe goto suite :erreur echo La clef n'existe pas :suite ...
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *