[AHK]脚本调度脚本

来源:互联网 发布:淘宝泳衣女装 编辑:程序博客网 时间:2024/06/04 19:49

 你在某脚本(老板1)中设置一个热键,可以暂停另一个脚本(员工2)的


 两个脚本:1常用  2临时用
在1中设置一个热键,可以暂停2的运行,
 就是老板可以让临时工随时滚蛋... 

以暂停为例,,老板脚本如下:

#F1::DetectHiddenWindows, onSetTitleMatchMode, 2PostMessage, 0x111, 65306,,, 这里写将被暂停的脚本名(员工脚本名).ahk - AutoHotkeyreturn 

65305 挂起

65306 暂停

65307退出

65304编辑


【应用】

#NoEnv;sunwind 2013年3月30日21:59:41;关闭除Needle变量之外的所有ahk进程result:=GetProcessInfo("AutoHotkey.exe");Needle为保留ahk列表 感谢逆风飞扬帮助完善!Needle =(脚本1名字脚本2名字)Loop, parse, result, `n{StringLeft,pid,A_LoopField,InStr(A_LoopField,"|")-1FoundPos := RegExMatch(A_LoopField, "[^\\]*\.ahk", Match) ;StringTrimRight,ming,Match,4;~ MsgBox, % "FoundPos: " FoundPos "`n" "Match: " MatchIfNotInString,Needle,%ming%PostMessage,0x111,65405,0,,ahk_pid %pid%       ;~ Process, Close,%pid%}returnGetProcessInfo(iProcessName,iProcessId="",iMode=1) {FROM=SELECT * FROM Win32_Process WHERE Name='%iProcessName%'psvc := ComObjGet("winmgmts:{impersonationLevel=impersonate}!" . "\\.\root\cimv2")penm := psvc.ExecQuery(FROM)._NewEnum While penm[pobj] {       PID := pobj.ProcessId           ; 获取进程PID       CMDLine := pobj.CommandLine ; 获取进程命令行       cDate := pobj.CreationDate      ; 获取创建时间(瞎翻译的)       regexmatch(CMDLine, "i)\s+(.*)", ff_)   ; 正则匹配命令行参数       StringReplace,ff,ff_1,`",,All       regexmatch(cDate, "Ui)^[0-9]{8}([0-9]{2})([0-9]{2})([0-9]{2})\..+$", dd_) ; 正则匹配时间       ;~ if (iProcessId=PID)               ;~ break       ;~ MsgBox,0,% iProcessId,% PID          result:=result . PID . "|" . ff . "|" . "`n"       }       if iMode=0 ;返回进程PID               return %PID%       if iMode=1 ;返回进程命令行               return %result%       if iMode=2 ;返回创建时间               return % dd_1 . ":" . dd_2 . ":" . dd_3}


0 0
原创粉丝点击