開機腳本之——限制單進程運行

把這個函數丟到任何AHK腳本中,就可以限制單進程運行。


;-- 限制單進程運行函數
OnlyOne() {
  static init:=OnlyOne()
  ListLines, % (lls:=A_ListLines=0?"Off":"On") ? "Off":"Off"
  DetectHiddenWindows, % (dhw:=A_DetectHiddenWindows) ? "On":"On"
  Gui, __OnlyOne__: Show, Hide, <<%A_ScriptFullPath%>>
  Gui, __OnlyOne__: +Hwndmyid
  WinGet, list, List, <<%A_ScriptFullPath%>> ahk_class AutoHotkeyGUI
  Loop, % list>1 ? list : 0
  {
    IfEqual, myid, % id:=list%A_Index%, Continue
    WinGet, pid, PID, ahk_id %id%
    WinClose, ahk_class AutoHotkey ahk_pid %pid%,, 3
    IfWinExist, ahk_id %id%,, Process, Close, %pid%
  }
  DetectHiddenWindows, %dhw%
  ListLines, %lls%
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章