如何从脚本保存后更新自动热键配置?

时间:2016-06-16 07:31:11

标签: autohotkey

我有一个快捷方式,可以在文本编辑器中打开当前运行的脚本,然后保存并关闭它。关闭后,如何更新ahk以使用新的更新设置?

这就是我所拥有的:

        IfWinExist, test.ahk    ahk_exe notepad.exe
        {
            WinActivate
            Sleep, 100
            Send, ^s
            Sleep, 200
            WinClose
        }
        else
            MsgBox, window not found

        app1Open=false
        Reload

2 个答案:

答案 0 :(得分:1)

如果要重新启动脚本本身(即从其自己的进程),请使用Reload命令。
否则,如果要从其他进程重新启动脚本,则必须将其关闭,然后再次运行该脚本。在这种情况下,你可以kill the script's process再次运行它(不好!)。或者您可以优雅地告诉脚本Reload,例如以下两种方式之一:

  • 进程间通信:OnMessage()用于接收流程,PostMessage/SendMessage用于发送流程
  • 在接收脚本中定义一个简单的热键并从另一个进程发送该热键

答案 1 :(得分:0)

正如MCL所提到的,使用Reload。无需关闭脚本。这是一个例子:

^!#r:: ; Save and Reload the script with Alt+Ctrl+Win+r
    IfWinExist, SciTE4AutoHotKey
    {
        WinActivate
        Sleep, 100
        Send, ^s
        Sleep, 300
    }
    Reload
Return