Ao usar EnableDelayedExpansion , você também deve usar ! em torno das variáveis que deseja atrasar a expansão.
Portanto, em vez de %CHOICE1% , você deve usar !CHOICE1! .
SETLOCAL EnableDelayedExpansion
FOR %%A IN (1 2 3) DO (
IF %%A EQU 1 (
SET CHOICE1=ABC
ECHO CHOICE1=%CHOICE1%
)
)
Saída:
CHOICE1=
Por que CHOICE1 não está definido?
Ao usar EnableDelayedExpansion , você também deve usar ! em torno das variáveis que deseja atrasar a expansão.
Portanto, em vez de %CHOICE1% , você deve usar !CHOICE1! .
Tags windows batch-file