4

Я только что сделал чистую установку Windows 10 на новый ПК. Ctrl+Backspace не удаляет слово слева от каретки ни в одной программе (Блокнот, Chrome [адресная строка и текстовые поля, такие как эта), поиск Windows и т.д.). С другой стороны, Ctrl+Delete работает и удаляет слово справа от каретки. Alt+Delete (восстановить последнее удаленное слово) работает в некоторых местах (Блокнот), но не в других (Chrome, поиск Windows).

Не знаю, актуально ли это, но я также установил вторую схему клавиатуры на португальском языке. Я не помню, использовал ли я команду до установки второй схемы, но команда не работает ни на одном языке.

Я думал об установке AutoHotKey, чтобы решить эту проблему, но, учитывая стандартную функцию этой команды, она действительно не должна быть необходимой.

РЕДАКТИРОВАТЬ: @Leathe предложил в комментариях тестировать экранную клавиатуру, чтобы увидеть, если это работает. Оно делает. Это подразумевает, что проблема в клавиатуре. Однако это явно не тривиальная аппаратная проблема (например, сломанный ключ), поскольку каждый из ключей работает правильно: Backspace удаляет букву слева от каретки и удаляет файлы в Проводнике; Ctrl изменяет поведение других клавиш (Ctrl+Delete, Ctrl+C, Ctrl+V - все работает как положено). Это просто совокупность того, что не ведет себя должным образом.

РЕДАКТИРОВАТЬ 2: Использование кодов сканирования клавиш Я проверил, как ПК получает нажатия клавиш при вводе этих комбинаций клавиш, и обнаружил очень странное поведение.

Вот вывод программы для Ctrl+C:

OnKeyDown, Key code=17, Control keys= Ctrl{Left}, Key name CTRL
OnKeyDown, Key code=67, Control keys= Ctrl{Left}, Key name c
OnKeyPress 
OnKeyup, Key code=67, Control keys= Ctrl{Left}, Key name c
OnKeyup, Key code=17, Control keys=, Key name CTRL

Это то же самое для любой другой комбинации (очевидно, замена второй и четвертой строк на соответствующую клавишу), за исключением Ctrl+Backspace, который выводит

OnKeyDown, Key code=17, Control keys= Ctrl{Left}, Key name CTRL
OnKeyup, Key code=17, Control keys=, Key name CTRL

OnKeyDown, Key code=17, Control keys= Ctrl{Left}, Key name CTRL
OnKeyup, Key code=17, Control keys=, Key name CTRL

где вторая и четвертая строки появляются, когда я нажимаю клавишу Backspace. По какой-то причине эта конкретная комбинация заменяет Backspace действием «поднял клавишу Ctrl ».

На самом деле, если я удерживаю любую комбинацию, программа отображает

OnKeyDown, Key code=17, Control keys= Ctrl{Left}, Key name CTRL
OnKeyDown, Key code=67, Control keys= Ctrl{Left}, Key name c
OnKeyPress 
OnKeyDown, Key code=67, Control keys= Ctrl{Left}, Key name c
OnKeyPress 
OnKeyup, Key code=67, Control keys= Ctrl{Left}, Key name c
OnKeyup, Key code=17, Control keys=, Key name CTRL

где OnKeyDown/OnKeyPress для C повторяются до тех пор, пока обе клавиши нажаты . Тем не менее, если я удерживаю Ctrl+Backspace, все, что я получаю, это один экземпляр

OnKeyDown, Key code=17, Control keys= Ctrl{Left}, Key name CTRL
OnKeyup, Key code=17, Control keys=, Key name CTRL

То есть, что касается ПК, я на самом деле ничего не нажимаю.

Я действительно не уверен, как решить это. Я даже не думаю, что AutoHotKey будет работать в этой ситуации, поскольку кажется, что комбинация Ctrl+Backspace просто не отображается на компьютере.

1 ответ1

2

Я решил это. Как только я опубликовал самое последнее редактирование, я вспомнил, что подключил клавиатуру к USB-порту с тегом HOTKEY, который является специальным портом, позволяющим загружать компьютер с клавиатуры и другими глупыми вещами.

Просто чтобы посмотреть, может ли это быть как-то связано с этим, я подключил клавиатуру к другому USB, и это решило проблему. Затем я посмотрел руководство к моей материнской плате (это MSI Z170a M7) и по какой-то абсурдной причине они установили Ctrl+Backspace в качестве ярлыка для их "функции HOTKEY", которая делает некоторые более глупые вещи. Почему они не выбрали буквально любую другую комбинацию, я понятия не имею. Но, ну, это решает это. Теперь мне просто нужно выяснить, могу ли я изменить комбинацию для этой функции HOTKEY или мне просто нужно оставить клавиатуру в другом USB-порту.

Но это другое дело.

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