Notepad++ 如何使自动热键在其他程序之前拦截热键?

Notepad++ 如何使自动热键在其他程序之前拦截热键?,notepad++,autohotkey,hotkeys,Notepad++,Autohotkey,Hotkeys,我有一个相当简单的自动热键脚本,当我按下鼠标上的某个按钮时,它可以启动和停止音乐播放: XButton1::发送{Media\u Play\u Pause}。这个程序运行得很好,我对它没有任何问题。但是,当我使用记事本++时,它会在自动热键执行并切换选项卡之前拦截鼠标按钮热键。当我想使用这个热键时,这迫使我从记事本++切换 有没有什么方法可以改变程序截取热键的顺序,使自动热键在任何输入的击键或鼠标按钮上总是获得优先权 或者,我可以在Notepadd++中更改设置以关闭XButton功能。我查看了

我有一个相当简单的自动热键脚本,当我按下鼠标上的某个按钮时,它可以启动和停止音乐播放:
XButton1::发送{Media\u Play\u Pause}
。这个程序运行得很好,我对它没有任何问题。但是,当我使用记事本++时,它会在自动热键执行并切换选项卡之前拦截鼠标按钮热键。当我想使用这个热键时,这迫使我从记事本++切换

有没有什么方法可以改变程序截取热键的顺序,使自动热键在任何输入的击键或鼠标按钮上总是获得优先权


或者,我可以在Notepadd++中更改设置以关闭XButton功能。我查看了所有的设置,但我找不到任何方法来停止此操作。

在记事本++中,您可以转到“设置>快捷方式映射器…”


如果您的X按钮模拟按键,则可能必须删除等效的键盘快捷键。

我在RDP窗口中也遇到类似问题

只要RDP窗口处于活动状态,它就会截获所有按键,而我的脚本将一无所获

我解决了这个问题,让脚本每10秒检查一次活动窗口是否是RDP窗口,如果是,脚本将重新加载

如果您有需要保留的变量,可以将它们存储在INI文件中或作为全局变量(这两种解决方案都会降低脚本的速度)


这不是一个完美的解决方案,因为如果您刚刚打开Notepad++,热键将不会立即响应。

好的。我想我设法弄明白了。
问题是我是以管理员的身份运行Notepad++的,所以我猜它在热键选择中获得了更高的优先级。以管理员的身份运行AHK也解决了这个问题。

在脚本顶部尝试
#UseHook
。运气不好。即使使用
#UseHook
,它的行为仍然相同。也可以尝试
#InstallMouseHook
。不,仍然不起作用。我也查看了那里。它似乎只有键盘热键,而没有选项卡切换鼠标热键。当整个ahk脚本都是:
XButton1::Send{Media\u Play\u Pause}
时,就会出现问题。记事本++中没有用于媒体播放暂停的键盘快捷键。记事本++还记录了它为XButtons实现这种选项卡切换行为(不幸的是,并不是如何摆脱它)。我很确定Notepad++只是在自动热键之前拦截热键。