New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Question] Как деактивировать только некоторые глобальные клавиши Windows? #5
Comments
Скореее всего никак, кроме хакинга виндовых бинарников. Максимум, чем может помочь ннкрон тут - это просто обрабатывать такой хоткей. Я этот вопрос решил следующим образом:
И все - проблемы нет вообще.
|
@VoidVolker Что-то совсем непросто... Можно реальные примеры? Например, назначить хоткей с использованием клавиши Win в Sublime Text. Для ремаппинга я пользовался программой SharpKeys. Заменил сканкод Left Win на сканкод любой неиспользуемой клавиши, например, → перезагрузил компьютер. Теперь клавиша Win не работает нигде, хоткеи в программах (а их много), в которых содержится Win, не работают. Что дальше, не очень понимаю. Придётся каждый хоткей, содержащий Win, писать в кронтабе, а не в Sublime Text? Спасибо. |
Само собой - ведь теперь данной клавиши на клавиатуре как бы вообще не существует. Поэтому все хоткеи привязанные к ней не будут работать. Судя по всему в ST используется фиксированный список хоткеев в виде их имен - так что использовать нестандартные коды там нельзя (возможно существует какой-нибудь плагин). Таким образом надо либо ловить хоткей в ннкроне и генерировать им новый хоткей для ST (что не удобно), либо заменить код на код используемой клавиши и сделать хоткей в ST на эту кнопку. |
@VoidVolker , я могу клавише Спасибо. |
Сделать задачу в ннкроне, которая делает то же самое, что Win+K, либо отправляет хоткей Win+K. |
попал сюда в поисках решения как выключить появившиеся в win10 1909 новые хоткеи |
Судя по всему - это программа, при этом для работы ей нужно быть запущеной. Из этого я могу предположить только то, что она тупо вешает хук на хоткей и не даёт ему пройти дальше. Или еще как-то вклинивается в работу хуков на клавиши. А хоткеи, вроде бы, работают от проводника или в его контексте. |
все это пробовал естественно. я с этим вопросом провел много часов в гугле - к примеру конкретно сюда я вообще попал из https://superuser.com/ ....
фишка в том что у него получилось их ОСВОБОДИТЬ - тоесть их (сочетания) можно использовать в любых программах. ТОесть обычно как это выглядит к примеру в https://sourceforge.net/projects/hotkeyp/ вешается глоабльный хук и можно назначить хоткеи только в программе где висит хук - а тут он этим плагином делает эти хоткеи доступные во всех программах! |
Хуки собираются в список и у установленного хука есть возможность как запуска следующего хука так и его игнорирование. Т.о., чисто теоретически можно сделать следующее:
И т.о., первым хуком игнорировать запуск следующего хука и запускать второй хук, чтобы очередь не прерывалась. Но это все чисто теоретически - т.к. надо закапываться в системную документацию и выяснять можно ли так сделать на практике. Возможно, та программа как-то внедряется в системные процессы или внедряет какой-то свой код куда-то. Были бы исходники и/или описание процесса - можно было бы легко сделать. А без них - только заниматься реверсингом приложения. На хабре есть много статей тему реверсинга - думаю можно обратиться к авторам этих статей за помощью с реверсингом данной утилиты с целью разобраться с этим механизмом. |
@lpslp , отпишитесь, пожалуйста, если нашли какое-нибудь приемлемое решение. Спасибо. |
эм, решения нет. |
Возможно, на nnCron это получится сделать.
Цель
Деактивировать только некоторые глобальные горячие клавиши Windows 10, чтобы можно было бы использовать их для запуска команд в других приложениях.
Подробно
Положим, я не пользуюсь горячими клавишами Win+K, Win+H и Ctrl+Win+P. Неплохо было бы деактивировать только их и запускать данными сочетаниями команды редактора Sublime Text.
Но мне не нужно деактивировать все глобальные шорткаты. Некоторыми, как Win+R и Win+D я активно пользуюсь.
Не помогло
Попытки решить задачу при помощи Реестра Windows, редактора локальной групповой политики, AutoHotkey и других программ оказались безуспешными, см. мой вопрос на Super User.
Спасибо.
The text was updated successfully, but these errors were encountered: