【发布时间】:2016-06-23 19:05:07
【问题描述】:
我有一个循环等待进程存在,然后再继续。但是,我想这样做,以便如果进程存在或存在具有某些特定类的窗口,则循环将继续进行。现在我有以下内容:
Loop {
Process, Wait, ProcessName.exe
; Do stuff
Sleep, 50
}
我想明确一点,我专门使用了Process, Wait,因为我不希望循环不断运行。
【问题讨论】:
标签: autohotkey
我有一个循环等待进程存在,然后再继续。但是,我想这样做,以便如果进程存在或存在具有某些特定类的窗口,则循环将继续进行。现在我有以下内容:
Loop {
Process, Wait, ProcessName.exe
; Do stuff
Sleep, 50
}
我想明确一点,我专门使用了Process, Wait,因为我不希望循环不断运行。
【问题讨论】:
标签: autohotkey
您可以使用"ahk_exe Process Name/Path" 代替“ProcessName.exe”来识别进程。 如果此进程没有可见窗口,请使用“DetectHiddenWindows, On”。
这样您可以使用GroupAdd 创建一个包含进程和窗口的窗口组。 在循环中将“Process, Wait, ProcessName.exe”替换为“WinWait, ahk_group GroupName”。
【讨论】:
process.exe 运行后立即继续Loop 或 ahk_class MyClass 是当前活动窗口WinActive("ahk_class MyClass")。因此,这两者中的任何一个都应该允许Loop 继续。它们是两个独立的程序。