Можете ли вы поместить элементы формы в пакетный файл DOS? - PullRequest
0 голосов
/ 10 июня 2011

Можно ли поместить элементы формы в командный файл?Мне было любопытно, когда я увидел это в Word 5.5 для DOS .Я не могу узнать, как это сделать, но я ничего не знаю обо всем этом барахле в исполняемом файле для DOS.Может кто-нибудь помочь мне?

Ответы [ 2 ]

1 голос
/ 10 июня 2011

Если вы хотите запросить свободный текст в пакетном файле, используйте:

SET /P UserName=What is your UserName?

Это помещает ответ пользователя в переменную среды с именем UserName, к которой можно получить доступ с помощью % UserName%

как это:

ECHO Hello, %UserName%.  Welcome to planet Earth!
0 голосов
/ 10 июня 2011

Вы можете поместить любую исполняемую команду в пакетный файл, следовательно, вы можете сделать что-нибудь в пакетном файле. Если вы видите что-то ужасно причудливое (например, управление окнами), вы, вероятно, смотрите на стороннюю программу, а не на команду, встроенную в сам командный процессор.

На макушке головы ближе всего к форме (из которой можно выбирать элементы), о которой я могу думать, это команда CHOICE. Чтобы узнать, как его использовать, введите в командной строке:

CHOICE /?

Вот описание ...

Этот инструмент позволяет пользователям выбрать один элемент из списка
из выборов и возвращает индекс выбранного выбора.

Вот несколько примеров синтаксиса ...

CHOICE /?
CHOICE /C YNC /M "Press Y for Yes, N for No or C for Cancel."
CHOICE /T 10 /C ync /CS /D y
CHOICE /C ab /M "Select a for option 1 and b for option 2."
CHOICE /C ab /N /M "Select a for option 1 and b for option 2."

А вот полный пример:

CHOICE /C:ABCDN /N /T:10 /D:N /M:"Format drive A:, B:, C:, D: or None?"
REM Note that ERRORLEVEL handlers must be in decreasing order...
IF ERRORLEVEL 5 SET DRIVE=None
IF ERRORLEVEL 4 SET DRIVE=drive D:
IF ERRORLEVEL 3 SET DRIVE=drive C:
IF ERRORLEVEL 2 SET DRIVE=drive B:
IF ERRORLEVEL 1 SET DRIVE=drive A:
ECHO You chose to format %DRIVE%
...