冬天喝热露露 发表于 2022-5-1 20:31:41

安装程序文件过大,载入慢,如何不用延迟的情况下确保代码不提前执行。

先上代码
Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",4)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)
Run('setup.exe')

WinWait("TEAM R2R Custom Installer v5.1.0","")
If Not WinActive("TEAM R2R Custom Installer v5.1.0","") Then WinActivate("TEAM R2R Custom Installer v5.1.0","")
WinWaitActive("TEAM R2R Custom Installer v5.1.0","")
MouseMove(276,392)
MouseDown("left")
MouseUp("left")
Sleep(1000)


WinWait("TEAM R2R Custom Installer v5.1.0","obj_Form")
If Not WinActive("TEAM R2R Custom Installer v5.1.0","obj_Form") Then WinActivate("TEAM R2R Custom Installer v5.1.0","obj_Form")
WinWaitActive("TEAM R2R Custom Installer v5.1.0","obj_Form")
MouseMove(373,391)
MouseDown("left")
MouseUp("left")
Sleep(1000)

由于SETUP.EXE有两个G那么大 载入慢
运行到红色代码的时候 可以检测到窗口但是 激活的慢这个时候 鼠标已经点过去了   导致后续代码提前执行    延迟大概8秒但是不同的电脑延迟不一样   我现在的办法是延迟多等几秒   
想问一下 有没有什么好的办法 解决这个小问题


我想了一个思路是检测橘色代码的窗口是否出现 如果没有出现就跳转到红色部分如果橘色的窗口出现就执行橘色的代码脚本继续

anythinging 发表于 2022-5-1 22:47:20

RunWait
试下

冬天喝热露露 发表于 2022-5-1 22:58:24

anythinging 发表于 2022-5-1 22:47
RunWait
试下

这个是一个安装程序,我的脚本是 自动安装,不能等他结束。

anythinging 发表于 2022-5-1 23:18:40

我想可以通过一个变量进行识别,来决定是否运行黄色代码。
$a = 0

当达到特定条件后,识别到窗口后,$a =1
do until $a = 1 运行黄色代码

冬天喝热露露 发表于 2022-5-1 23:46:36

Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",4)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)
Run('Waves13-01.exe')
Local $hWnd = WinWait("Waves 13 2022.03.17_01 安装","欢迎使用 Waves 13 安装程序", 15) ;等待窗口
WinActivate("Waves 13 2022.03.17_01 安装","欢迎使用 Waves 13 安装程序") ;激活窗口
ControlClick($hWnd, "", "obj_BUTTON13") ;点击按钮


Local $hWnd = WinWait("Waves 13 2022.03.17_01 安装","选择安装目录", 15) ;等待窗口
WinActivate("Waves 13 2022.03.17_01 安装","选择安装目录") ;激活窗口
ControlClick($hWnd, "", "obj_BUTTON13") ;点击按钮

我改了这个好使了

bfgxp 发表于 2022-5-2 12:17:42

一般的安装程序都有静默安装参数的
如果没有静默参数,首选是使用控件点击
如果获取不到控件才考虑模拟鼠标点击

bfgxp 发表于 2022-5-2 12:19:08

模拟鼠标点数,我一般是检测窗口尺寸,等窗口尺寸达到正常时,鼠标再点击

风过无痕 发表于 2022-5-2 21:14:06

直接找静默参数,你这种取坐标的不行,换个分辨率就玩完

冬天喝热露露 发表于 2022-5-3 15:42:22

风过无痕 发表于 2022-5-2 21:14
直接找静默参数,你这种取坐标的不行,换个分辨率就玩完

那用相对坐标呢软件太多静默参数怎么找呀
页: [1]
查看完整版本: 安装程序文件过大,载入慢,如何不用延迟的情况下确保代码不提前执行。