Чтобы изменить или отфильтровать поведение, вы можете перехватывать ключи с помощью ловушки:
SetWindowsHookEx
с использованием WH_KEYBOARD
Процедура hook получает, среди прочего, счетчик повторений (из-за удержания клавиши)
Обратите внимание, что низкоуровневая клавиатура (WH_KEYBOARD_LL
) не получает счетчик повторений.
Если все ваши окна созданы в одной и той же ветви, вы можете использовать привязку к потоку и избежать перемещения процедуры подключения в DLL.
Я смутно помню, что количество повторов генерируется самой клавиатурой, а перехватчик LL отправляет повторяющиеся события нажатия клавиш - хотя я могу ошибаться. В DOS частота и время повторения клавиш, которые были установлены в BIOS или посредством вызова BIOS, возвращались к значениям по умолчанию, когда клавиатура DIN или PS / 2 была отключена и подключена повторно. Я не уверен, ПОЧЕМУ вам нужно точно знать.