Назад | Перейти на главную страницу

Почему моя пакетная команда выбора всегда выбирает первый целочисленный вариант?

Я создал простое меню выбора чисел вроде следующего:

@echo off
CLS
:MENU
ECHO.
ECHO ...............................................
ECHO PRESS 1, 2 OR 3 to select your task, or 4 to EXIT.
ECHO ...............................................
ECHO.
ECHO 1 - Open MSOFFICE 2007
ECHO 2 - Open MSOFFICE 2010

CHOICE /N /T 10 /D 1 /C 12 /M "Press 1 for MSOFFICE 2007 or 2 for MSOFFICE2010 
Default is 1"
IF ERRORLEVEL==1 GOTO OFFICE2007
IF ERRORLEVEL==2 GOTO OFFICE2010

:OFFICE2010
C:\MSOFFICE2010.TXT

:OFFICE2007
C:\MSOFFICE2007.TXT

Моя проблема в том, что когда я нажимаю выбор «2», он открывает файл выбора «1»

Что я делаю не так?

Вы забыли добавить "%" до и после ERRORLEVEL:

ЕСЛИ % ERRORLEVEL%== 1 GOTO OFFICE2007 и т.д ...

И вам нужно добавить goto :EOF в вашем разделе OFFICE2010, иначе вы запустите оба файла.

:OFFICE2010
C:\MSOFFICE2010.TXT
goto :EOF

:OFFICE2007
C:\MSOFFICE2007.TXT