На жаль, не існує централізованого, адміністративного способу управління або виявлення глобальних гарячих клавіш в Windows. Коли програма встановлює глобальну гарячу клавішу, вона просто повідомляє Windows, що хоче прослуховувати всі події та фільтри на клавіатурі, виходячи з того, що вона хоче почути, як тільки Windows розповість про це.
Іншими словами:
- Ви включаєте глобальні гарячі клавіші в додатку (наприклад, Winamp)
- Winamp повідомляє Windows, що хоче прослуховувати події на клавіатурі загальної системи через API Windows (це спрощено. Є деякі події на клавіатурі, які все ще відфільтровані від програм користувача, деякі програми повинні встановити фільтри, щоб отримати більш детальну інформацію)
- Коли трапляється подія на клавіатурі (натискається клавіша), Windows надсилає в програму повідомлення про те, що "була натиснута клавіша, ось деталі"
- Потім додаток розглядає інформацію, надану Windows, яка, як правило, включає натиснуті клавіші та будь-які модифікатори (наприклад, shift, alt, ctrl, ключ Windows)
- Залежно від того, яка програма зацікавлена та яка клавіша була натиснута, програма виконає певну дію (наприклад, призупинить пісню) або іншим чином поверне контроль назад у Windows. Тобто, якщо була натиснута клавішна комбінація, яка зацікавила додаток, вона зробить відповідні дії.
Завдяки цьому процесу та до розгляду програми, яка обробляє глобальні натискання клавіш, ви можете зрозуміти, чому для цього немає центрального управління або контролю.
Моя єдина порада може використовувати щось на кшталт ProcMon або Process Explorer, щоб спостерігати, яка дія відбувається під час натискання комбінації клавіш, яка вас цікавить.