Blog. Just Blog

ReadKey 1.0

Версия для печати Добавить в Избранное Отправить на E-Mail | Категория: Мои программы | Автор: ManHunter
Небольшая консольная программа для использования в пакетных файлах. Возвращает в %ERRORLEVEL% скан-код нажатой клавиши. Ее удобно применять, когда требуется запросить от пользователя какую-нибудь информацию, например подтверждение выбора Yes/No, букву диска, число от 0 до 9 и т.п. Для определения скан-кодов нужных вам клавиш в архиве прилагается файл scancodes.bat. Пример использования ReadKey:

@echo off
echo Example of usage ReadKey 1.0
:loop
echo Press [Y]es or [N]o:
readkey.exe
if %errorlevel% == 78 goto _no
if %errorlevel% == 89 goto _yes
:_error
echo Invalid Key!
goto loop
:_yes
echo Your choice is YES
goto _exit
:_no
echo Your choice is NO
:_exit
pause

Этот же пример в файле usage.bat из архива. В этом пакетном файле пользователя просят выбрать "Y" или "N" и, в зависимости от выбора, управление передается на разные ветки алгоритма.

ReadKey 1.0ReadKey 1.0

ReadKey.1.0-PCL.zip (3,955 bytes)


Поделиться ссылкой ВКонтакте
Просмотров: 5462 | Комментариев: 3

Внимание! Статья опубликована больше года назад, информация могла устареть!

Комментарии

Отзывы посетителей сайта о статье
user (30.07.2013 в 00:23):
Респект.
Когда-то затеял делать такую же для DOS, но тут же и забросил.
Застрял на изменении переменной среды родителя.

Здесь стоило бы только уточнить, что батник из сеанса COMMAND.COM
нужно запускать как "CMD /C test.bat".

Полезная программка.
ManHunter (05.08.2009 в 23:50):
Ага, конечно проще. И F5 ты так конечно же поймаешь, и на кнопки с регистром 'Y' и 'y' будешь писать два правила, и делать обработчик на случай если я введу 'Yхуй' и т.д.
walker (15.07.2009 в 09:39):
А может так проще? только  файлик должен быть с расширением .CMD
...
:loop
SET /P ANSWER=Press [Y]es or [N]o:
if %ANSWER% == Y goto _yes
if %ANSWER% == N goto _no
...
ну и так далее....

Добавить комментарий

Заполните форму для добавления комментария
Имя*:
Текст комментария (не более 2000 символов)*:

*Все поля обязательны для заполнения.
Комментарии, содержащие рекламу, ненормативную лексику, оскорбления и т.п., а также флуд и сообщения не по теме, будут удаляться. Нарушителям может быть заблокирован доступ к сайту.
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2024
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.08 сек. / MySQL: 2 (0.0018 сек.) / Память: 4.5 Mb
Наверх