【已解决】关于nod32的自动安装问题
本帖最后由 dhwc 于 2010-12-14 22:07 编辑nod2.7比较经典,想做一个自动安装的脚本,脚本如下:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MsgBox(4096, "注意!", "程序安装过程中,请不要有任何键鼠操作!", 3)
blockinput (1)
Run("setup.exe")
WinWaitActive("设定向导","欢迎使用NOD32设定程序")
ControlClick("设定向导","欢迎使用NOD32设定程序","")
WinWaitActive("最终用户软件使用协议","我同意")
ControlClick("最终用户软件使用协议","我同意","")
ControlClick("最终用户软件使用协议","我同意","")
WinWaitActive("自动更新设定","以后再设定更新参数")
ControlClick("自动更新设定","以后再设定更新参数","")
ControlClick("自动更新设定","以后再设定更新参数","")
WinWaitActive("ThreatSense.Net","预警系统")
ControlClick("ThreatSense.Net","预警系统","")
WinWaitActive("不受欢迎软件侦测","启动不受欢迎软件侦测")
ControlClick("不受欢迎软件侦测","启动不受欢迎软件侦测","")
ControlClick("不受欢迎软件侦测","启动不受欢迎软件侦测","")
WinWaitActive("文件实时监控AMON","我希望自动加载文件实时监控")
ControlClick("文件实时监控AMON","我希望自动加载文件实时监控","")
if WinWaitActive("网络监视","侦测来自互联网的入侵") then
ControlClick("网络监视","侦测来自互联网的入侵","")
ControlClick("网络监视","侦测来自互联网的入侵","")
EndIf
WinWaitActive("安装参数全部设定完毕","安装参数全部设定完毕")
ControlClick("安装参数全部设定完毕","安装参数全部设定完毕","")
WinWaitActive("安装完成","需要重新启动")
ControlClick("安装完成","需要重新启动","")
ControlClick("安装完成","需要重新启动","")
FileDelete (@StartMenuCommonDir&"\程序\Eset\自述文件.lnk")
FileDelete (@StartMenuCommonDir&"\程序\Eset\卸载.lnk")
FileDelete (@StartMenuCommonDir&"\程序\Eset\帮助.lnk")
exit
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
因为xp和2003环境下nod安装过程有区别(200环境多一个设置网络监视的环节),所以我用了if...then...语句,但是,很奇怪,这样做了之后2003正常了,xp反而不正常了,运行到这一步就停止不前了,请问达人,这代码哪里错了?
恳请指教,谢谢!
新人发帖,如有违规,请斑竹移贴并谅解 顶一下等达人 WinWaitActive 的意思是:暂停脚本的执行,直到请求的窗口处于激活状态为止. 在XP系统下,根据不存在你请求的窗口,脚本将永远暂停
建议你将红色部分替换成以下代码:If @OSVersion = "WIN_2003" Then ;判断如果系统版本是2003系统则执行以下操作
WinWait("网络监视","侦测来自互联网的入侵") ;等待窗口出现
ControlClick("网络监视","侦测来自互联网的入侵","")
ControlClick("网络监视","侦测来自互联网的入侵","")
EndIf 我想过用系统版本来判断,但是win系统版本太多了,你这样在2000、win7下面还是会有问题的。
既然winwaitactive会因为窗口是否激活出问题,那么换成winwait呢?也还是不行啊?
谢谢你的解答 回复 4# dhwc
你不是说2003系统下才有那个对话框吗?
WinWait ( "标题" [, "文本" [, 超时]] ),可以填上超时时间,如果时间过了窗口还没出现则继续,单位:秒 进来学习一下,谢谢! 本帖最后由 都市浪子666 于 2010-12-14 14:48 编辑
MsgBox(4096, "注意!", "程序安装过程中,请不要有任何键鼠操作!", 3)
blockinput (1)
Run("setup.exe")
WinWaitActive("设定向导","欢迎使用NOD32设定程序")
ControlClick("设定向导","欢迎使用NOD32设定程序","")
WinWaitActive("最终用户软件使用协议","我同意")
ControlClick("最终用户软件使用协议","我同意","")
ControlClick("最终用户软件使用协议","我同意","")
WinWaitActive("自动更新设定","以后再设定更新参数")
ControlClick("自动更新设定","以后再设定更新参数","")
ControlClick("自动更新设定","以后再设定更新参数","")
WinWaitActive("ThreatSense.Net","预警系统")
ControlClick("ThreatSense.Net","预警系统","")
WinWaitActive("不受欢迎软件侦测","启动不受欢迎软件侦测")
ControlClick("不受欢迎软件侦测","启动不受欢迎软件侦测","")
ControlClick("不受欢迎软件侦测","启动不受欢迎软件侦测","")
WinWaitActive("文件实时监控AMON","我希望自动加载文件实时监控")
ControlClick("文件实时监控AMON","我希望自动加载文件实时监控","")
;一直循环,直到存在("安装参数全部设定完毕","安装参数全部设定完毕") 这个窗口 才跳出循环
;在循环期间如有 ("网络监视","侦测来自互联网的入侵")这个窗口则执行相应的操作
Do
Sleep(10)
if WinExists("网络监视","侦测来自互联网的入侵") then
ControlClick("网络监视","侦测来自互联网的入侵","")
ControlClick("网络监视","侦测来自互联网的入侵","")
EndIf
Until WinExists("安装参数全部设定完毕","安装参数全部设定完毕") =True
WinWaitActive("安装参数全部设定完毕","安装参数全部设定完毕")
ControlClick("安装参数全部设定完毕","安装参数全部设定完毕","")
WinWaitActive("安装完成","需要重新启动")
ControlClick("安装完成","需要重新启动","")
ControlClick("安装完成","需要重新启动","")
FileDelete (@StartMenuCommonDir&"\程序\Eset\自述文件.lnk")
FileDelete (@StartMenuCommonDir&"\程序\Eset\卸载.lnk")
FileDelete (@StartMenuCommonDir&"\程序\Eset\帮助.lnk")
exit
回复dhwc
你不是说2003系统下才有那个对话框吗?
...
yhxhappy 发表于 2010-12-14 08:27 http://www.autoitx.com/images/common/back.gif
抱歉,是我说的不够完整,我就是不想因操作系统环境的不同造成安装失败,谢谢解答
都市浪子666 发表于 2010-12-14 09:10 http://www.autoitx.com/images/common/back.gif
谢谢你的解答,回去试验后确认 一会研究一下~~~~ 研究的怎样~~~~~~ xp_sp3、2003se、2003ee测试通过!
谢谢都市浪子的解答
页:
[1]