enjoyhappy 发表于 2010-9-9 15:20:35

安装过程中的异常处理

大家好,本人写了一个自动安装SQL Server的AU3程序,如果目标系统没有问题的话,可以一直安装下去没有问题。但是有些机器比较旧,所以安装的时候会跳出警告说“没有安装 installer 3.1" 或者 ”没有安装 .net framework 2.0“ 之类的,请问这些异常该如何捕捉和处理比较好? 因为我采取的是 winwaitactive 机制, 我不能winwait警告窗口而忽略正常的对话窗口。请问各位有没有遇到过这个困惑?

谢谢

enjoyhappy 发表于 2010-9-9 15:30:21

先自问自答,找到一个方法, 用 AdlibRegister,抛砖引玉,大家有更好的方法请分享哦

enjoyhappy 发表于 2010-9-9 16:41:39

本帖最后由 enjoyhappy 于 2010-9-9 16:46 编辑

奇怪,为什么下面的function不执行?

AdlibRegister("ErrorCheckAdlib", 1000)
Run("SQLEXPR32_SP2.exe")       

Exit

Func ErrorCheckAdlib()   
    If WinActive("Microsoft SQL Server 2005 Setup", "SQL Server Setup has detected") Then
       ControlClick("Microsoft SQL Server 2005 Setup", "SQL Server Setup has detected", "")
    EndIf
EndFunc

t87564833 发表于 2010-9-9 16:44:26

那就顺便帮装.net framework 2.0等东西吧,这些都是自带静默安装参数的,楼主可以去查一下吧

enjoyhappy 发表于 2010-9-9 16:54:34

问题是有些已经有.net framework的电脑就不要再重复安装了

enjoyhappy 发表于 2010-9-9 17:47:46

再一次自问自答, 应该用 RunWait("SQLEXPR32_SP2.exe")而不是 Run("SQLEXPR32_SP2.exe")
这样程序就会顺利执行
页: [1]
查看完整版本: 安装过程中的异常处理