Questa domanda ha già una risposta qui:
SETLOCAL EnableDelayedExpansion
FOR %%A IN (1 2 3) DO (
IF %%A EQU 1 (
SET CHOICE1=ABC
ECHO CHOICE1=%CHOICE1%
)
)
Produzione:
CHOICE1=
Perché è CHOICE1 non si sta preparando?
Questa domanda ha già una risposta qui:
SETLOCAL EnableDelayedExpansion
FOR %%A IN (1 2 3) DO (
IF %%A EQU 1 (
SET CHOICE1=ABC
ECHO CHOICE1=%CHOICE1%
)
)
Produzione:
CHOICE1=
Perché è CHOICE1 non si sta preparando?
Risposte:
Quando si usa EnableDelayedExpansion devi anche usare ! attorno alle variabili che si desidera ritardare l'espansione.
Pertanto, invece di %CHOICE1% devi usare !CHOICE1!.