Эмулировать кнопку клавиатуры через командную строку
На моей клавиатуре нет клавиши Num Lock, и по какой-то причине ни одно из изменений реестра не работает.
Могу ли я использовать командную строку или PowerShell в Windows 10, чтобы "нажать" клавишу? Я ищу что-то вроде press pgup
нажать клавишу Page Up в командной строке или PowerShell, но для Num Lock.
2 ответа
Как мне переключить статус numlock с помощью PowerShell.
Используйте следующий скрипт:
$wsh = New-Object -ComObject WScript.Shell $wsh.SendKeys('{NUMLOCK}')
Ответ Source StackOverflow PowerShell: Включение и выключение "Num Lock". Энди Арисменди
Как указал ABashore в своем комментарии, это можно сократить следующим образом:
$wshell.SendKeys('{NUMLOCK}')
Вот строка powershell, которая переключит ваш NUMLOCK. Я проверил это, и он работает на моей клавиатуре Logitech K120 USB.
$wshell.SendKeys('{NUMLOCK}')
Вот список других кодов SendKey.
Если вам нужно отправить нажатие клавиши в интерактивное приложение, потребуется больше кода.
Партия
Без создания временных файлов. "Цикл" был показан только для того, чтобы вы могли открыть блокнот для вывода. Удалите это после.
@echo off
:loop
::------------begin main code------------
set command=new ActiveXObject('WScript.Shell').SendKeys('WoW{ENTER}{ENTER}');
for /f "delims=" %%i in ('mshta "javascript:%command%close(new ActiveXObject('Scripting.FileSystemObject'));"') do set
::-------------end main code-------------
timeout /t 1 /nobreak >nul
goto :loop