QQ管家版本号PCMgr_Setup_11_1_16908_217,测试代码如下:
;存在安装进程,直接结束,方便调试
If ProcessExists("PCMgr_Setup_11_1_16908_217.exe") Then ProcessClose("PCMgr_Setup_11_1_16908_217.exe")
;运行程序
Run("PCMgr_Setup_11_1_16908_217.exe")
$title = "电脑管家安装"
$text = "继续安装需要关闭实时防护,是否要继续?"
;存在QQ管家实时防护进程,说明已经安装了。弹出的这个窗口很难操控,有时成功,有时不成功,干脆弹出提示要求手点!
If ProcessExists("QQPCRTP.exe") Then
TrayTip('QQ实时防护已经开启', "QQ管家实时防护开启,很多操作弄不了。" & @CRLF & "请手动点是,10秒内不点脚本退出!", 1)
;等待窗口出现开始计时
WinWait($title, $text)
EndIf
$title = "电脑管家 安装向导"
$text = $title
;10秒内不出窗口,就超时,下面if就不成立
If WinWait($title, $text, 10) Then
;清空上面的traytip提示。
TrayTip("清空提示", "", 1)
;需要修改路径,可以启用下面的代码
;~ ControlClick($title,$text,"ATL:005138B01","",1,59,651)
;~ Sleep(500)
;~ ControlSetText($title,$text,"CEagleEdit1","C:\Program Files (x86)\Tencent\QQPCMgr\")
;点击 带我飞 装逼!
ControlClick($title, $text, "ATL:005138B01", "", 1, 444, 490)
While 1
Sleep(500)
;不断的获取QQ管家安装窗口的位置和大小,如果大小为370*600时,表示安装完成
$WinPos = WinGetPos($title, $text)
If IsArray($WinPos) Then
;宽度为370,高度为600时
If $WinPos[2] = 370 And $WinPos[3] = 600 Then ExitLoop
EndIf
WEnd
Sleep(100);少量的等待,以防电脑卡的人点不到。
;点击完成
ControlClick($title, $text, "ATL:005138B01", "", 1, 189, 452)
If WinWait("电脑管家新功能", "", 3) Then
WinActivate("电脑管家新功能", "")
$WinPos = WinGetPos("电脑管家新功能", "")
;获取鼠标位置并保存
$MousePos = MouseGetPos()
MouseClick("", $WinPos[0] + 727, $WinPos[1] + 467, 1, 0)
;鼠标移回原处
MouseMove($MousePos[0], $MousePos[1], 0)
EndIf
EndIf
|