Autohotkey 覆盖默认快捷键

通过对注册表进行下面的修改, 您可以禁用除 Win+L 和 Win+U 外的其他所有内置的 Windows 热键 (这种方法应该适用于所有操作系统, 但可能需要重启才生效,注册表命令regedit):

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer下添加:

NoWinKeys REG_DWORD 0x00000001 (1)

禁用Win+L: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System下添加DWORD 32位的值,并重命名为DisableLockWorkstation,并将其值修改为1

但如果您想进一步设置而非仅仅禁用它们, 那么请继续阅读.

其他程序中定义的热键可以被指定到脚本中的动作来轻松地进行覆盖或禁用. 此特性常用来改变 Windows 内置的热键. 例如, 如果您想用 Win+E (启动 Windows Explorer 的快捷键) 执行其他的动作, 请使用这个:

 

#e::

MsgBox This hotkey is now owned by the script.

return

在下面的例子中, 把用来打开运行对话框的 Win+R 热键完全禁用了:

 

#r::return

同样地, 要 禁用两个 Windows 键, 请使用这个:

 

Lwin::return

Rwin::return

要禁用或改变一个应用程序的非全局热键 (即仅对那个应用程序的窗口有效的快捷键), 请参考下面的例子, 其中仅禁用了记事本的 Control+P (打印), 而让它对其他所有窗口保持有效:

$^p::

IfWinActive ahk_class Notepad

    return  ; 即不进行操作, 这样让 Control-P 在记事本中失效.

Send ^p

return

在上面的例子中, 必须使用 $ 前缀, 这样热键才可以 "发送自身" 而不触发它自己 (否则会出现提示无限循环的警告对话框). 另请参阅: 上下文相关的热键.

您可以尝试执行上面的每个例子: 把它们复制到新文本文件 (例如 "Override.ahk"), 然后运行这个文件.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戴国进

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值