Autohotkey 必须;“重新加载此脚本”;在自动热键中,某些程序将拾取重新映射

Autohotkey 必须;“重新加载此脚本”;在自动热键中,某些程序将拾取重新映射,autohotkey,Autohotkey,我有一个非常简单的AutoHotkey.ahk文件,其中我将Capslock重新映射到Esc和Esc到Capslock(交换键): 然而,这在《战场4》或《传奇联盟》这样的游戏中不起作用。它根本不起任何作用 但是,我可以在自动热键中按重新加载此脚本,重新映射将在这些游戏中开始工作。不过,它在其他游戏中也可以工作,而无需先重新加载脚本 我希望你能帮助我。我真的希望它能正常工作,而不是手动重新加载脚本。尝试使用#IfWinActive指令,使热键只在您想要的程序中工作,这样您就不需要重新加载 检查文

我有一个非常简单的
AutoHotkey.ahk
文件,其中我将
Capslock
重新映射到
Esc
Esc
Capslock
(交换键):

然而,这在《战场4》或《传奇联盟》这样的游戏中不起作用。它根本不起任何作用

但是,我可以在自动热键中按
重新加载此脚本,重新映射将在这些游戏中开始工作。不过,它在其他游戏中也可以工作,而无需先重新加载脚本

我希望你能帮助我。我真的希望它能正常工作,而不是手动重新加载脚本。

尝试使用
#IfWinActive
指令,使热键只在您想要的程序中工作,这样您就不需要重新加载

检查文档中的“上下文相关热键”(在索引中的“热键”下)。以下是文档中的一个示例:

#IfWinActive,ahk_类记事本^a::在记事本处于活动状态时按Ctrl-a的MsgBox。在任何其他窗口中按Ctrl-A将通过 Ctrl键-对该窗口的按键。 #c::在记事本处于活动状态时按下Win-c的MsgBox

但我想我知道为什么它开始“不起作用”。可能是某些程序将这些键设置为热键。无论何时启动这些程序,它们都会设置自己的热键,并且会覆盖您的脚本。你看,热键组合属于任何最后设置它的程序。重新加载脚本时,它会将脚本重置为具有authourity


因此,如果您希望脚本永远不会被覆盖,并且不希望手动重新加载脚本,请找出这些组合在哪些程序中不起作用,然后使用autohotkey的
reload
命令使用
ifwinactive
重新加载脚本。

我想要列出的键图。我运行了脚本,但是键映射在某些游戏中不起作用。他们在桌面上工作。在我重新加载脚本(已经运行)后,键映射将在游戏中工作(在桌面上也是如此)。希望这能解释我的问题。您是否查阅了文档中的指令?它是用于键映射的。它让他们为你想要的节目工作,而不是为你不想要的节目工作。所有节目?不仅仅是游戏?不!处处这就是问题所在。不是所有的游戏都能找到我的钥匙地图。我想有些游戏会覆盖默认的键盘地图。你能给我一个工作的例子,比如说每次我打开记事本或Chrome,它都会重新加载自动热键一次吗?我无法让它工作。
Capslock::Esc
Esc::Capslock