Хотя это очень старый вопрос, я хочу сообщить о своих выводах по этой теме. Я наткнулся на библиотеку AutoHotKey_L , пытаясь переписать клавиатуру Volume_Up
и Volume_Down
глобальные горячие клавиши. Цель состояла в том, чтобы иметь возможность контролировать общую громкость во время запуска ограниченного нажатия клавиш в полноэкранных приложениях / играх ( игры Bethesda в качестве печально известного примера). Функции довольно просты, поэтому я просто опубликую небольшой пример:
Volume_Up::
newVol := VA_GetMasterVolume() + 5
VA_SetMasterVolume(newVol)
return
Volume_Down::
newVol := VA_GetMasterVolume() - 5
VA_SetMasterVolume(newVol)
return
В принципе, этот код содержит все, что вам нужно. Он перезаписывает обе клавиши так же, как и раньше, но вместо того, чтобы полагаться на ОС для перехвата нажатия клавиш, AHK устанавливает громкость самостоятельно. Конечно, вы можете указать любую другую горячую клавишу. Поскольку, похоже, нет встроенной функции для относительного изменения громкости , вам сначала нужно получить текущий объем, а затем увеличить / уменьшить его по желанию (здесь:) 5
. VA_SetMasterVolume
принимает значения от 0,0 до 100,0 включительно.
Чтобы это работало в ограниченных полноэкранных окнах, было достаточно вызвать #UseHook
директиву в верхней части моего скрипта.
Рекомендации:
- Загрузка библиотеки: Функции
управления аудиосистемой Vista от Lexikos
- VA Online документация