3

Я новичок в пакетных файлах, и мне нужно написать один для программы, которая работает в DOS. Один из вопросов в приглашении требует команды функциональной клавиши (например, F1, F2 и т.д.).

Я прочитал статью, в которой говорится, что вы не можете отправлять функциональные клавиши или сочетания клавиш Alt + в DOS. Хотя я также прочитал статью, в которой говорится, что "Специальный расширенный код" для функциональных клавиш выглядит следующим образом:

F1: 0;59
F2: 0;60
etc...

Итак, мой вопрос, вы можете отправить команды функциональных клавиш в DOS? Если так, каков наилучший способ сделать это?

1 ответ1

1

Вот пример из вашей ссылки

@ECHO OFF
REM     Reassign F1 to list current directory
REM     Reassign F10 to give DOS version

ECHO ←[0;59;"DIR/w/p";13p
ECHO ←[0;68;"VER";13p

REM     Now Put a menu on the Screen in Bright Yellow
CLS
ECHO ←[1;33m
ECHO ←[12;20HF1                   List Current directory
ECHO ←[14;20HF10                  Print DOS Version Number

REM     Reset display to normal
ECHO ←[0m

(примечание ← обозначает символ Escape, введенный с помощью Ctrl+P, затем Esc внутри команды DOS EDIT или команды EDIT командной строки Windows)

Вы спрашивали

Итак, мой вопрос, вы можете отправить команды функциональных клавиш в DOS?

Если пример работает, да, вы можете. На самом деле вы можете использовать Windows, а не DOS, что может изменить ситуацию. Можете ли вы объяснить, что произошло, когда вы попробовали пакетный файл выше?

Когда вы пишете "отправить команды функциональных клавиш", вы можете иметь в виду что-то другое. Если это так, было бы полезно объяснить вам, чего вы хотите достичь, более подробно.

Если так, каков наилучший способ сделать это?

Я не знаю, но метод в статье кажется разумным (если ограничен в применимости).

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