qysir 发表于 2009-4-28 11:15:51

关于自动安装,望高手帮我看看错那里了

本帖最后由 qysir 于 2009-4-28 13:39 编辑

代码如下
Func _az()
        $var = IniReadSectionNames($pzwj)
                For $i = 1 To $var
                        If GUICtrlRead($xz[$i]) = $GUI_CHECKED Then
                                $azwj = IniRead($pzwj, $i, "文件", "")
                                ShellExecute($azwj)
                                Sleep(1500)
                                For $j = 1 To 99
                                        If IniRead($pzwj, $i, "标题" & $j, "没有找到内容") = "没有找到内容"Then ExitLoop
                                Next
                                $j = $j - 1
                                For $ii = 1 To $j
                                        $bt1 = IniRead($pzwj, $i, "标题" & $ii, "没有找到内容")
                                        $bt2 = IniRead($pzwj, $i, "内容" & $ii, "没有找到内容")
                                        While 1
                                                If $bt2 <> "没有找到内容"And WinExists($bt1, $bt2) Then ExitLoop
                                                If $bt2 = "没有找到内容"And WinExists($bt1) Then ExitLoop
                                                Sleep(100)
                                        WEnd
                                        WinWait($bt1, $bt2)
                                        WinActivate($bt1, $bt2)
                                        For $k = 1 To 99
                                                $aj = IniRead($pzwj, $i, "按键" & 100 * $ii + $k, "")
                                                $jian = StringSplit($aj, ",", 0)
                                                If $jian = "" Then ExitLoop
                                                If $jian = "控件:"Then
                                                        ControlClick($bt1, $bt2,$jian)
                                                ElseIf $jian = "文本:"Then
                                                        ControlSetText($bt1, $bt2,$jian,$jian)
                                                ElseIf $jian = "延时:"Then
                                                        Sleep($jian)
                                                Else
                                                        Send($aj)
                                                EndIf
                                        Next
                                Next
                        endif
                Next
EndFunc
配置文件

名称=千千静听5.3
分类=常规
文件=ttpsetup.exe
标题1=5.3 安装程序
内容1=欢迎使用
按键101=!{s}
按键102=控件:,Button2
标题2=5.3 安装程序
内容2=请仔细阅读以下的"软件使用协议"
按键201=控件:,Button2
标题3=5.3 安装程序
内容3=选择要安装的组件
按键301=控件:,Button2
标题4=5.3 安装程序
内容4=指定安装本软件的目标文件夹
按键401=文本:,Edit1,D:\Program Files\TTPlayer
按键402=控件:,Button4

主要就是自动安装部分不能动作

131738 发表于 2009-4-28 20:26:20

一个自动安装还用配置文件?

单就软件自动安装,简短到复杂了!

看不懂?????????

若是其它用途。。。。。。。。。。??????

qysir 发表于 2009-4-28 21:31:15

这样方便软件更新了重新写AU3程序,只需要修改下配置文件就能实现新软件的自动安装了呀

llztt 发表于 2009-4-28 23:20:35

星迟周 做过类似的软件安装器的,可以咨询咨询他

abendessen 发表于 2009-5-12 13:48:04

为什么不用控件去操作

abendessen 发表于 2009-5-12 13:49:20

winexist这个是没有用的,有些窗口是隐藏的,但可以找到

starl 发表于 2009-5-12 15:19:05

$var = IniReadSectionNames($pzwj)
For $i = 1 To $var

IniReadSectionNames这个函数返回的数组元素的个数是存放在$var中,所以循环语句应该改为
For $i = 1 To $var
页: [1]
查看完整版本: 关于自动安装,望高手帮我看看错那里了