Эмулировать кнопку клавиатуры через командную строку

13

Моя клавиатура не имеет Num Lockключа, и по какой-то причине ни одно из изменений реестра не работает.

Могу ли я использовать командную строку или PowerShell в Windows 10, чтобы «нажать» клавишу? Я ищу что-то вроде press pgupнажатия Page Upклавиши в командной строке или PowerShell, но для Num Lock.

Jaketr00
источник

Ответы:

16

Как мне переключить статус numlock с помощью PowerShell.

Используйте следующий скрипт:

$wsh = New-Object -ComObject WScript.Shell
$wsh.SendKeys('{NUMLOCK}')

Ответ Source StackOverflow PowerShell: Включение и выключение «Num Lock». от Энди Арисменди

Как отметил А.Б.Шахор в своем комментарии, это можно сократить следующим образом:

$wshell.SendKeys('{NUMLOCK}')
ДэвидПостилл
источник
Похоже, вам не нужно определять «wsh», чтобы делать то, что ему нужно. Я смог просто переключить NUMLOCK одной строкой.
ABashore
@ABashore Круто. Я проголосовал за ваш ответ
DavidPostill
10

Вот строка powershell, которая переключит ваш NUMLOCK. Я проверил это, и он работает на моей клавиатуре Logitech K120 USB.

$wshell.SendKeys('{NUMLOCK}')

Вот список других кодов SendKey.

Если вам нужно отправить нажатие клавиши в интерактивное приложение, потребуется больше кода.

ABashore
источник