Batch base de registre

[Résolu/Fermé]
Signaler
Messages postés
408
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
17 décembre 2016
-
Messages postés
408
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
17 décembre 2016
-
Salut,
Je dois faire un fichier batch qui, en fonction de ce que l'on mettra dans les variables, va changer le nom du PC.
Au début je demande les infos sur la localisation et le type de poste, je dois ensuite le renommer avec ces deux variables et ajouter avant ces deux dernières une constante.
Exemple : XYZ-123-PC
XYZ doit être constant sur tous les postes
123 est la localisation du poste (La variable Lieu)
PC est le type de poste (La variable Poste)

Le script suivant ne change rien dans la base de registre.

@ECHO OFF
SET /P Lieu = Lieu où se trouve l'entité :
SET /P Poste = Type de poste (PC, portable) :

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %Lieu% /f

Comment ajouter une constante à chaque fois devant le nom (XYZ un peu plus haut), ainsi que les tirets? La variable ne fonctionne pas avec les %variable%, cela m'affiche le /f, comment faire pour afficher ce que l'on a mis dans la variable?
Merci.

3 réponses

Messages postés
18246
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
21 juillet 2021
5 331
hello
pas d'espaces avant et après = avec set
SET /P Lieu=Lieu où se trouve l'entité :
SET /P Poste=Type de poste (PC, portable) : 
sinon le nom de la variable est %Lieu<espace>%
C:> set Lieu=123
C:> echo XYZ-%Lieu%
XYZ-123
C:>
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
408
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
17 décembre 2016
56
Merci pour le coup des espaces avant les =.
Par contre, je ne veux pas faire un echo mais bien changer la donnée de le valeur dans la base de registres :
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d "IRR-%Lieu%" /f
Là sa me met dans la donnée de la valeur : IRR-
Cela ne prend pas en compte la variable Lieu.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
18246
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
21 juillet 2021
5 331
le echo était un exemple. "IRR-%Lieu%" devrait marcher, affiche Lieu avant le reg add, avec des + pour voir d'éventuels espaces
echo +%Lieu%+
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
408
Date d'inscription
mardi 24 janvier 2012
Statut
Membre
Dernière intervention
17 décembre 2016
56
Merci.