2013-03-29 240 views
4

假设我有一个autohotkey脚本C:\path\to\my\script正在运行。有没有办法定义一个重新启动它的热键?热键重新启动autohotkey脚本?

+0

相关:[自动重新加载AutoHotkey的脚本改性时(https://stackoverflow.com/q/45468335/3357935) –

回答

6

为了防止重复的情况下,我通常不重新启动脚本,但使用内置的功能Reload。我推出这个与按Ctrl ++ Alt键+[R和使用按Ctrl ++ Alt键+Ë编辑主AHK脚本。

^#!r::Reload 

其实,我的剧本是这样的:

^#!r:: 
Send, ^s ; To save a changed script 
Sleep, 300 ; give it time to save the script 
Reload 
Return 

^!#e::Edit 

由于事实上,所有的方式在我的脚本的顶部我有这样给我的视觉和听觉指示,脚本被重新启动:

#SingleInstance Force 
#installKeybdHook 
#Persistent 
Menu, Tray, Icon , Shell32.dll, 25, 1 
TrayTip, AutoHotKey, Started, 1 
SoundBeep, 300, 150 
Return 
+1

在我的脚本顶部添加了几行,因为我拥有它们.... –

1

制作一个运行脚本的热键,在这种情况下脚本是相同的脚本,然后退出。

somehotkey:: 
    Run, C:\path\to\my\script.ahk 
    ExitApp 
return 
+1

为了防止在同时运行多个实例(RU n创建一个新实例),我使用'^#!r :: Reload' –

+0

@RobertIlbrink。如果重新启动脚本,您应该将其作为答案发布。如果避免重复,你的解决方案可能比Armin更好。 –

+0

@RobertIlbrink重新加载和我的建议完全一样。 – 2013-03-29 19:28:48