¿Cómo deshabilitar solo algunos atajos globales de Windows 10 para usarlos en aplicaciones de terceros?

10

1. Brevemente

Quiero deshabilitar solo algunas teclas de acceso rápido globales predeterminadas de Windows 10, para usar estas teclas de acceso rápido para ejecutar comandos de Sublime Text.



2. Detalle

Tengo Windows de 32 bits 10.0.14393. En Windows 10 tenemos muchas teclas rápidas nativas .

1. Quiero deshabilitar

Por ejemplo, quiero deshabilitar las teclas de acceso rápido personalizadas Win+K, Win+Hy Ctrl+Win+P.

2. No quiero deshabilitar

Pero, por ejemplo, no quiero desactivar Win+Dy Win+Rteclas de acceso rápido. A menudo uso estas teclas de acceso rápido.

3. Sublime texto parte del mapa de teclas

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


3. No ayudó

1. Anulación de AutoHotkey

Mi código:

#k::return

Win+KLa tecla de acceso rápido global está deshabilitada para mí, pero mi comando Sublime Text pasteno se ejecuta también.

2. AutoHotkey sobrescribe las teclas de acceso rápido globales de Windows a la tecla de acceso rápido de la aplicación

Mi código:

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

Me funcionó, pero tengo errores, por ejemplo:

Error AutoHotkey

Para otras teclas de acceso rápido también tengo errores. Sería bueno si alguien mejorara este código.

3. SharpKeys

El programa SharpKeys puede deshabilitar o reasignar la Wintecla, pero no quiero esto.

4. gpedit.msc

Puedo desactivar algunas teclas de acceso rápido predeterminadas , pero:

  • No puedo desactivar (usando gpedit.msc), por ejemplo Win+K, Win+Hy Ctrl+Win+P.
  • Puedo desactivar Win+Dy Win+R, pero quiero usar estas teclas de acceso rápido.

5. Tecla de desactivación simple

Descargo clave desactivar simple → I desactivar Win+Ken el programa → reinicio de Windows → Win+Kno se deshabilita para mí.

6. Parámetro DisabledHotkeys en el Registro de Windows

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

Creo un parámetro de cadena DisableHotkeyscon valor KHPE.

DisabledHotkeys

Win+E, por ejemplo, está deshabilitado para mí, pero

  • Win+P, Win+Ky Win+Hno están deshabilitados.
  • Este método no es para deshabilitar, por ejemplo, Ctrl+Win+Py Ctrl+Win+F4.


4. No ofrecer

  • Por favor, no ofrezca soluciones para deshabilitar todos los accesos directos globales con Winclave, no personalizada;
  • Por favor, no ofrezca atajos de AutoHotkey redirigir a otros atajos .
Саша Черных
fuente

Respuestas:

1

Puede usar Autohotkey para reasignar cualquier tecla de acceso rápido para enviar otra tecla de acceso rápido utilizando el comando Enviar

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

Después de presionar Win + K enviará Ctrl + Shift + P que mostrará la Paleta de comandos en Sublime Text, puede usar esta forma para anular cualquier tecla de acceso rápido para enviar otra tecla de acceso rápido, configurarla en algo como Ctrl + Shift + F3 y asignarla tecla de acceso rápido para pegar Sublime Text (en combinaciones de teclas) y luego use Win + K para enviar Ctrl + Shift + F3 a Sublime Text que llamará pegar.

Script AutoHotkey:

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

Teclas de texto sublimes:

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

Editar :

Visto tu Please, don't offer AutoHotkey shortcuts redirect to other shortcuts.por qué no? El ejemplo anterior funciona incluso para Win + R:

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

Texto pegado con éxito a través de Win + R en Sublime Text.

Edición 2 :

Si realmente desea asignar teclas de acceso rápido reales , puede deshabilitar todas las Win+{KEY}teclas de acceso rápido, y luego crear sus teclas de acceso rápido que harán lo mismo que las Win+{Key}teclas de acceso rápido predeterminadas , y para otras teclas de acceso rápido asigne sus propias acciones.

Por ejemplo para Win + R:

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

Funciona, pero para algunas teclas de acceso rápido es difícil encontrar cómo llamar a sus acciones.

BladeMight
fuente
BladeMight, // 1) > Seen your Please, don't offer AutoHotkey shortcuts redirect to other shortcuts. why not? : crea otro acceso directo si también tengo un acceso directo sin sentido. ¿Por qué necesitamos un atajo adicional Win+K, si es que lo tenemos Ctrl+V? Pero no lo he pensado, olvidé que podemos cambiar las teclas rápidas incómodas, que no usamos. Win+KEs más cómodo entonces Ctrl+Win+Alt+Shift+F3. Gracias por la solucion!
Саша Черных
// 2) you could disable all Win+{KEY} hotkeys, - ¿es similar a la solución VoidVolker ? ¿Y cómo puedo encontrar dígitos como {2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}teclas de acceso rápido? Gracias.
Саша Черных
BladeMight, por favor, agregue returndespués de cada secuencia de comandos. De lo contrario, si uso muchos scripts en un .ahkarchivo, todos los scripts se ejecutan para mí. Gracias.
Саша Черных
1
@ СашаЧерных Acerca de Shell ::: aquí hay una lista de g-ek.com/clsid-guid-spisok-shell-v-windows-10 pero eso es principalmente para carpetas.
BladeMight
1
@ СашаЧерных también aquí ipmnet.ru/~sadilina/Windows/227.html puede ser útil.
BladeMight
0

Eche un vistazo al DisabledHotkeysvalor del registro, aplicado en esta rama:

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

Establecer sus datos de valor en KHPbloquearía las combinaciones WinKey+ K, WinKey+ Hy WinKey+ P.

Src: valor de registro DisabledHotkeys

w32sh
fuente
w32sh, configuré el parámetro DisableHotkeys → Reinicio Windows → Win+P, Win+Ky Win+Hlos atajos globales se ejecutan para mí como antes (. Gracias.
Саша Черных
Solo lo probé aquí. No parece funcionar para PH y K. Sin embargo, puede bloquear WinKey + E. Me gustaría borrar mi respuesta.
w32sh
1
w32sh, probé en otras teclas de acceso rápido ahora. Solo puede bloquear teclas de acceso rápido como en gpedit.msc . Gracias.
Саша Черных