Diselist » 24 апр 2019, 18:05
Я в своей практике пользовался другим способом. В autoexec.bat прописываю строки:
ECHO Нажмите Alt для запуска программы №1
ECHO Нажмите Ctrl для запуска программы №2
ECHO Нажмите Shift для запуска программы №3
BE DELAY 72
BE SHIFTSTATE
IF ERRORLEVER 4 GOTO ALTBOOT
IF ERRORLEVER 2 GOTO CTRLBOOT
IF ERRORLEVER 1 GOTO SHIFTBOOT
GOTO END
:ALTBOOT
PROG1
GOTO END
:CTRLBOOT
PROG2
GOTO END
:SHIFTBOOT
PROG3
:END
Что всё это значит? В Нортоновских утилитах есть замечательная прога be.exe (Batch Exhancer), которая даёт много новых возможностей (звуки, меню, состояние клавиш, выполнение заданий в определённые дни недели). Тут в частности, проверяется, нажата ли кнопка Alt, либо Ctrl, либо Shitf (errorlevel может иметь и больше значений, как комбинацию всех этих нажатий). Перед этим печатается подсказка, делается пауза в 4с (72 интервала по 1/18с), за которую юзер должен успеть клавишу прижать, и не отпускать, пока выбор не произойдёт (второй вызов Be). Можно и заранее прижать. Пускается одна из программ, какую надобно (либо сразу на END, если ничего не нажато). Тут уж подредактируйте, как нужно. Можно использовать досовскую утилитку choice, в которой вариант по умолчанию выбирается за какое-то время. Be.exe позволяет даже создавать графические меню с выбором пунктов с клавиатуры (только мышь, увы, не поддерживает). Нортоновские утилиты, в которые программка эта входит, пойдут любой версии.
Последний раз редактировалось
Diselist 30 сен 2023, 23:40, всего редактировалось 2 раз(а).