ret := ""
for _, obj in p_AHKGetAll()
  ret .= "`nname:"	obj.name 
    . "`npath:"	 obj.path 
    . "`npid:"	  obj.pid 
    . "`nhwnd:"	 obj.hwnd 
    . "`n-------------------------"
msgbox % ret
return

/*   精简版
DetectHiddenWindows On
WinGet, 遍历id, List, ahk_class AutoHotkey
Loop %遍历id% {
  WinGetTitle, 获取窗口标题变量, % "ahk_id " 遍历id%A_Index%
  MsgBox % 获取窗口标题变量
}
Return
*/

;~ 获取所有所有执行中的ahk进程信息, 单位为字典的列表
p_AHKGetAll() {
  ;获取所有ahk进程信息, 默认执行最后关闭隐藏窗口搜索
  lsAHK := []	;"name" : ,"path:" , "pid" : , "hwnd" :
  DetectHiddenWindows % ("On", DHW:=A_DetectHiddenWindows)
  WinGet, id, list, ahk_class AutoHotkey
  loop %id%{
    WinGetTitle, sTitle, % "ahk_id " id%A_Index%
    if (RegExMatch(sTitle, "(.+) - AutoHotkey v[\d\.]+$", sFilePath)) {
      WinGet, iPID, pid,	% "ahk_id " id%A_Index%
      SplitPath, sFilePath1, sName
      lsAHK.push(object("hwnd", id%A_Index%,"path", sFilePath1, "pid", iPID,"name", sName))
    }
  }
  DetectHiddenWindows %DHW%
  return lsAHK
}

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。