Script Windows
Résolu
aramir
Messages postés
959
Date d'inscription
Statut
Membre
Dernière intervention
-
aramir Messages postés 959 Date d'inscription Statut Membre Dernière intervention -
aramir Messages postés 959 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un problème avec le script windows ci-dessous
En effet quel que soit ce que l'on tape pour initialiser choice, la variable dest reste égale à XXX. En revanche cela fonctionne si j'enlève les if. Mais le script perd alors tout sons sens. Pourquoi refuse t-il de modifier une variable dans un if?
Merci d'avance pour vos réponses.
J'ai un problème avec le script windows ci-dessous
@echo off SET dest=XXX SET /P choice= IF %choice% == 1 ( SET dest=truc echo %dest% PAUSE EXIT ) else ( SET dest=chose echo %dest% PAUSE )
En effet quel que soit ce que l'on tape pour initialiser choice, la variable dest reste égale à XXX. En revanche cela fonctionne si j'enlève les if. Mais le script perd alors tout sons sens. Pourquoi refuse t-il de modifier une variable dans un if?
Merci d'avance pour vos réponses.
A voir également:
- Script Windows
- Clé windows 8 - Guide
- Montage video windows - Guide
- Windows ne démarre pas - Guide
- Windows movie maker - Télécharger - Montage & Édition
- Restauration systeme windows 10 - Guide
1 réponse
J'ai trouvé,
il faut activer l'expansion retardée de variables.
(cf. http://astase.com/forums/viewtopic.php?id=2075 )
Ce qui donne:
il faut activer l'expansion retardée de variables.
(cf. http://astase.com/forums/viewtopic.php?id=2075 )
Ce qui donne:
setlocal enableDelayedExpansion set dest=XXXXXXXXXXXXXXXX SET /P choice= IF %choice% == 1 ( SET dest=truc echo "on veut truc" echo !dest! PAUSE ) else ( echo "on veut chose" SET dest=chose echo !dest! PAUSE ) endlocal