Мне нужен способ определить, когда пользователь нажимает клавиши со стрелками в пакетном файле Windows. Я думаю, что проще всего было бы использовать инструмент командной строки, который отображает десятичное значение любой нажатой клавиши и переходить оттуда. Было бы проще установить значение ключа непосредственно в пакетную переменную, но я могу сделать это без (через цикл FOR, чтобы установить вывод команды в переменную)
Единственное, что у меня есть, это использование кейлоггера и проверка файла журнала на наличие клавиш со стрелками, но это не работает, и мне не нравятся кейлоггеры (как и клиент).
вот пример того, как я могу его использовать:
for /f "tokens=1,2 delims=[]" %%A in ('foo.exe') do set input=%%B
:: the above justs sets the output of the command "foo.exe" the variable %input%
if %input%==37 echo you pressed the left arrow key.
if %input%==38 echo you pressed the up arrow key.
if %input%==39 echo you pressed the right arrow key.
if %input%==40 echo you pressed the left arrow key.
поэтому мне просто нужна программа, в которой, когда я набираю какую-либо команду из командной строки, foo.exe
, программа ждет, пока пользователь нажмет кнопку, и любая нажатая кнопка записывается и выводится в десятичной форме (код виртуальной клавиши и вы можете найти список здесь.), например этот 37
( Ключ для левой кнопки мыши)