Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
933 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [BATCH]tester la valeur d'un clé de registre.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[BATCH]tester la valeur d'un clé de registre.

n°2042456
tuxbleu
renie ses origines
Posté le 15-12-2010 à 17:45:05  profilanswer
 

Bonjour
 
Je souhaite tester la valeur d'une chaine dans une clé de registre.
Tester la présence d'une chaine dans une clé de registre, ca je sais faire :

Code :
  1. reg query HKEY_CURRENT_USER\blabla /v ma_chaine.


 
Mais comment tester si cette chaine vaut telle ou telle valeur ?


---------------
Mon topic de vente - Mon feed-back
mood
Publicité
Posté le 15-12-2010 à 17:45:05  profilanswer
 

n°2042719
Xspawn_Lpc
Posté le 16-12-2010 à 20:32:03  profilanswer
 

avec un for sur la commande
 
EX  :    for /f "tokens=3 " %i in ('reg query "HKCU\Console" /v "FontSize" ^| find "FontSize" ') do echo %i
 
Mais bon vbs reste bien plus pratique ;)

Message cité 1 fois
Message édité par Xspawn_Lpc le 16-12-2010 à 20:32:17

---------------
Quand on aime on ne compte pas. Quel Dilemme lorsque l'on aime compter !
n°2042729
tuxbleu
renie ses origines
Posté le 16-12-2010 à 21:14:35  profilanswer
 

Xspawn_Lpc a écrit :

avec un for sur la commande
 
EX  :    for /f "tokens=3 " %i in ('reg query "HKCU\Console" /v "FontSize" ^| find "FontSize" ') do echo %i
 
Mais bon vbs reste bien plus pratique ;)


Ouep, je suis parti sur du vbs.
A contrario, j'arrive pas à faire un équivalent à "if regexist", mais je récupère très bien la valeur de ma clé quand elle existe.
J'ai fais le porc avec un "on error resume next", je lis ma clé, si la valeur c'est "" je sais que la clé n'existe pas.
Tu parles d'un codage de sagouin...
Mais ça marche


---------------
Mon topic de vente - Mon feed-back
n°2201740
Eck0
Posté le 04-09-2013 à 14:22:15  profilanswer
 

Hello,
 
Petit remontage de topic pour partager la commande que je cherchais:
 
Le script suivant vérifie la présence d'une valeur dans une clé de registre et l'ajoute le cas échéant.
 

Code :
  1. set reg_path=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
  2. set reg_key=ProxyOverride
  3. set reg_type=REG_SZ
  4. set reg_value=192.*
  5. FOR /f "tokens=3" %%i IN ('reg query "%reg_path%" ^| find "%reg_key%"') DO FOR /f %%j IN ('echo "%%i" ^| find /c "%reg_value%"') DO (
  6. IF %%j == 0 (reg add "%reg_path%" /v "%reg_key%" /t %reg_type% /d "%reg_value%;%%i" /f)
  7. )


 
Ici, le script recherche la valeur "192.*" dans les exceptions au Proxy des parametres IE et l'ajoute s'il ne la trouve pas.
(le "/f" du REG ADD force l'écrasement des valeurs existantes sans confirmation)
 
EnJoY !  ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [BATCH]tester la valeur d'un clé de registre.

 

Sujets relatifs
[Shell/Batch] Modification de valeurs non numériques dans une colonne[Shell/Batch] Installation de programme en chaîne
récupérer valeur avec $_post[HELP] Aide sur la création d'un batch moyennement complexe
sélecteur Jquery : récupérer une valeurprobléme en commande batch
Problème de "goto" en batch...permet de rechercher une valeur unique dans une table
PHP et AJAX Probleme pour renvoyer une valeurRemplacer la valeur 0 par un blanc ou tiret
Plus de sujets relatifs à : [BATCH]tester la valeur d'un clé de registre.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR