AIMP Forum
AIMP for PC => Вопросы / Questions => Topic started by: imbat on January 13, 2026, 12:16:18
-
Кажется, Win11 начал по-новому маршрутизировать клавиши (заметил недавно, номер билда сказать не могу). Когда активно окно процесса с Integrity level: High (запущенного как администратор), другие процессы перестают обрабатывать хоткеи. Я заметил это в своём приложении, где обрабатываю WH_KEYBOARD_LL. Не знаю, как обрабатываются хоткеи в AIMP, но в нём проблема тоже воспроизводится.
Windows 11 Pro 23H2 x64.
AIMP v5.40.2703, 64-bit, Portable.
1. Запустите любую программу как администратор. Например, FAR Manager.
2. Убедитесь, что она запустилась с повышенными привилегиями (т.к. Chrome автоматически понижает себе привилегии). Для этого можно запустить Process Explorer, вывести колонку Integity level и посмотреть, что там стоит значение High.
3. Назначьте функции в AIMP на кастомные мультимедийные клавиши. Например, Seek Back на кнопку Browser Back и Seek Forward на кнопку Browser Forward.
4. Активируйте окно запущенной с админскими правами программы (FAR Manager). Назначенные в п.3 хоткеи в AIMP не работают.
5. Сверните все окна. Хоткеи в AIMP снова работают.
В общем, говоря простым языком, пока сидишь в ФАРе или в другом приложении для администрирования ОС, проигрыванием музыки с клавиатуры не поуправляешь.
Опытным путём было выяснено, что если процесс, которому нужны хоткеи, запускать тоже из-под админа, то хоткеи в него приходят независимо от других приложений.
Проблема была бы решена, если бы AIMP умел запускаться при старте системы от администратора. Если что, можно посмотреть, как это сделано в таких программах, как Process Explorer или HWiNFO — они запускаются не через ветку Run в реестре, а создают таску в скежулере на событие логина, и имеют галочку «Запускаться как администратор» (соответственно, у таски от этой галки зависит флаг привилегий).
-
Запуск от имени администратора - костыль, причём вредный костыль, ломающий интеграцию в систему.
На своём компе забавляйтесь как хотите, а интегрировать это в программу для всех пользователей не нужно однозначно.
-
Когда активно окно процесса с Integrity level: High (запущенного как администратор), другие процессы перестают обрабатывать хоткеи.
По-моему это началось еще с Windows 8 (или 10?)
-
если бы AIMP умел запускаться при старте системы от администратора
Вы это можете сами у себя настроить: создаём ярлык, в его свойствах ставим галочку "запуск от имени администратора", помещаем ярлык в автозагрузку.
-
Запуск от имени администратора - костыль, причём вредный костыль, ломающий интеграцию в систему.
Если вы знаете другой способ, поделитесь, пожалуйста. Я буду использовать его в своих приложениях. Пока что приходится пользоваться костылём, чтобы не говорить своим юзерам: «Просто сверните FAR».
По-моему это началось еще с Windows 8 (или 10?)
Не поручусь на 100%. Но мне кажется, я бы заметил, потому что постоянно пользуюсь хоткеями.
-
Вы это можете сами у себя настроить: создаём ярлык, в его свойствах ставим галочку "запуск от имени администратора", помещаем ярлык в автозагрузку.
Разве при этом он не будет каждый раз показывать окно UAC?
-
Кстати, на многих клавиатурах физически отсутствуют соответствующие клавиши (непосредственно вызывающие WM_APPCOMMAND_BROWSER_BACKWARD и WM_APPCOMMAND_BROWSER_FORWARD)… Тупо, что у AIMP`а назначение MOUSE4 и MOUSE5 в "глобальные 1" определяются соответственно как Browser Back и Browser Forward (хотя MOUSE4 и MOUSE5 не приводит к опросу ключей "Explorer\AppKey\1" и "Explorer\AppKey\2" соответственно)… Да и вышло нажатия на MOUSE4 и MOUSE5 только в AIMP`е и работают, даже если он виден на экране (фокус на запущенном с обычными правами блокноте, rasphone, и др.)… Естественно, с проводником та же ситуация, да и убив процесс explorer.exe ситуация не меняется…
-
Разве при этом он не будет каждый раз показывать окно UAC?
Не знаю, может и будет, но это опять же настраивается на стороне системы.
Со стороны программы нельзя просто так взять и "втихую" запуститься с повышенными правами.
Кстати, на многих клавиатурах физически отсутствуют соответствующие клавиши (непосредственно вызывающие WM_APPCOMMAND_BROWSER_BACKWARD и WM_APPCOMMAND_BROWSER_FORWARD)… Тупо, что у AIMP`а назначение MOUSE4 и MOUSE5 в "глобальные 1" определяются соответственно как Browser Back и Browser Forward (хотя MOUSE4 и MOUSE5 не приводит к опросу ключей "Explorer\AppKey\1" и "Explorer\AppKey\2" соответственно)… Да и вышло нажатия на MOUSE4 и MOUSE5 только в AIMP`е и работают, даже если он виден на экране (фокус на запущенном с обычными правами блокноте, rasphone, и др.)… Естественно, с проводником та же ситуация, да и убив процесс explorer.exe ситуация не меняется…
К чему это?
-
Со стороны программы нельзя просто так взять и "втихую" запуститься с повышенными правами.
Насколько помню, в Ccleaner такое сделано через доп. задачу в системном менеджере. Что-то подобное можно встретить для ручного "костыля", если поискать в Интернете. Если верно понял, что-то такое автор поста и написал последним абзацем.
По хорошему, вообще какому-нибудь фару не нужно повышать все права, а он должен делать запрос UAC при необходимости.
-
Насколько помню, в Ccleaner такое сделано через доп. задачу в системном менеджере. Что-то подобное можно встретить для ручного "костыля", если поискать в Интернете. Если верно понял, что-то такое автор поста и написал последним абзацем.
По хорошему, вообще какому-нибудь фару не нужно повышать все права, а он должен делать запрос UAC при необходимости.
Да, там у них фоновая служба (сервис), которая стартует процесс. Мне кажется, таких костылей задача не стоит.