Como desativar apenas alguns atalhos globais do Windows 10 para usá-los em aplicativos de terceiros?

8

1. Resumidamente

Eu quero desabilitar apenas algumas teclas de atalho globais padrão do Windows 10, para usar essas teclas de atalho para executar os comandos de texto sublime.

2. Detalhe

Eu tenho o Windows de 32 bits 10.0.14393. No Windows 10, temos muitas teclas de atalho nativas .

1. Eu quero desativar

Por exemplo, eu quero desabilitar teclas de atalho personalizadas, Win + K , Win + H e Ctrl + Win + P . p>

2. Eu não quero desativar

Mas, por exemplo, eu não quero desabilitar as teclas de atalho Win + D e Win + R . Costumo usar essas teclas de atalho.

3. Parte do keymap de texto sublime

{
    "keys": ["super+k"],
    "command": "paste"
},

3. Não ajudou

1. Substituição do AutoHotkey

Meu código:

#k::return
A tecla de atalho global Win + K está desativada para mim, mas o meu comando Sublime Text paste também não funciona.

2. AutoHotkey sobrescreve as teclas de atalho globais do Windows para a tecla de atalho do aplicativo

Meu código:

#IfWinActive ahk_class PX_WINDOW_CLASS
$#2::ControlSend, ahk_parent, % SubStr(A_ThisHotkey, 2)
#IfWinActive

Funcionou para mim, mas eu tenho erros, por exemplo:

Paraoutrasteclasdeatalhoeutambémtenhobugs.Seriabomsealguémmelhorasseestecódigo.

3. SharpKeys

O programa SharpKeys pode desabilitar ou reatribuir a chave Win , mas eu não quero isso.

4. gpedit.msc

Eu posso desativar algum padrão teclas de atalho , mas:

  • Eu não consigo desabilitar (usando gpedit.msc), por exemplo, Win + K , Win + H e Ctrl + Win + P
  • Eu posso desabilitar Win + D e Win + R , mas eu quero usar essas teclas de atalho.

5. Chave de desativação simples

Eu baixei Tecla de desabilitação simples → desabilite Win + K no programa → Reinicio o Windows → Win + K não está desabilitado para mim.

6. Parâmetro DisabledHotkeys no Registro do Windows

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced]

Eu crio o parâmetro de string DisableHotkeys com o valor KHPE .

Win+E,porexemplo,estádesativadoparamim,mas

  • Win+P,Win+KeWin+Hnãoestãodesabilitados.
  • Estemétodonãoserveparadesabilitar,porexemplo,Ctrl+Win+PeCtrl+Win+F4.

4.Nãoofereça

  • Porfavor,nãoofereçasoluçõesparadesabilitartodososatalhosglobaiscomachaveWin,nãopersonalizados;
  • Porfavor,nãoofereça redirecionados para outros atalhos do AutoHotkey .
por Саша Черных 19.11.2016 / 12:06

2 respostas

1

Você pode usar Autohotkey para remapear qualquer tecla de atalho para enviar outra tecla de atalho usando o comando Enviar :

#k::
Send {WIN up}
Send {k up}
Send ^+p
return

Depois disso, pressionar Win + K enviará um Ctrl + Shift + P, que mostrará a Paleta de Comandos no Texto Sublime, você pode usar dessa forma para sobrescrever qualquer tecla de atalho para enviar outra tecla de atalho, configurá-la para algo como Ctrl + Shift + F3 e atribua essa tecla de atalho à pasta Sublime Text (em atalhos de teclado) e use Win + K para enviar Ctrl + Shift + F3 para Sublime Text, que chamará de colar.

Script do AutoHotkey:

#k::
Send {WIN up}
Send {K up}
Send !^+{F3}
return

Keybindings de texto subliminares:

{ "keys": ["ctrl+alt+shift+f3"], "command": "paste" }

Editar :

Visto seu Please, don't offer AutoHotkey shortcuts redirect to other shortcuts. , por que não? O exemplo acima funciona mesmo para o Win + R:

#r::
Send {WIN up}
Send {r up}
Send !^+{F3}
return

Texto colado com sucesso por Win + R em Sublime Text.

Editar 2 :

Se você realmente deseja atribuir teclas de atalho real você pode desabilitar todas as teclas de atalho Win+{KEY} , e então criar suas atalhos que farão o mesmo como teclas de atalho Win+{Key} , e para outras teclas de atalho, atribua suas próprias ações.

Por exemplo, para o Win + R:

explorer.exe Shell:::{2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}

Funciona, mas para algumas teclas de atalho é difícil descobrir como chamar suas ações.

    
por 20.01.2017 / 21:27
0

Dê uma olhada no valor do registro DisabledHotkeys , aplicado neste ramo:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced

Configurando seus dados de valor para KHP bloquearia WinKey + K , WinKey + H e < Combinações kbd> WinKey + P .

Src: Valor do Registro DisabledHotkeys

    
por 19.11.2016 / 12:29