SETLOCAL EnableDelayedExpansion 
FOR %%A IN (1 2 3) DO (  
IF %%A EQU 1 (  
SET CHOICE1=ABC  
ECHO CHOICE1=%CHOICE1%  
)  
)  

Выход:

CHOICE1=

Почему CHOICE1 не устанавливается?

1 ответ1

0

При использовании EnableDelayedExpansion вы также должны использовать ! вокруг переменных, которые вы хотите отложить расширение.

Поэтому вместо %CHOICE1% вы должны использовать !CHOICE1! ,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .