前些天,发布了一篇“AutoCAD 2007 全自动安装脚本+简体中文免激活版”,就是用AutoIT3编写的。
不过,AutoCAD2007这篇自动安装脚本,写的比较简单,只是使用了“Run”、“WinWaitActive”、“ControlClick”、“Send”这几个函数而已。当然了。有优点,也有缺点。
用此方法写的
优点:编写速度快,简单
缺点: 以后维护麻烦(比如更新软件版本).
下面介绍的这个“Kmplayer Plus 2010”将使用全新的编写方法.
#Region ;**** 参数创建于 ACNWrapper_GUI **** #AutoIt3Wrapper_icon=KmplayerPlus.ico #AutoIt3Wrapper_outfile=kmplayerPlus 2010 AutoIns.exe #AutoIt3Wrapper_Compression=4 #AutoIt3Wrapper_UseAnsi=y #AutoIt3Wrapper_Res_Description=Copyright Yusky.Me #AutoIt3Wrapper_Res_Fileversion=2010 #AutoIt3Wrapper_Res_Fileversion_AutoIncrement=N #AutoIt3Wrapper_Res_requestedExecutionLevel=requireAdministrator #AutoIt3Wrapper_Res_LegalCopyright=Copyright (C) 2010 Yusky Group Co,.Ltd #AutoIt3Wrapper_Res_Field=程序设计|Yusky #AutoIt3Wrapper_Res_Field=作者网站|http://Yusky.me #AutoIt3Wrapper_Res_Field=更新日期|2010-08-09 #AutoIt3Wrapper_Res_Field=适用版本|Kmplayer Plus 2010 #AutoIt3Wrapper_Res_Field=源文件名|Kmplayer Plus 2010.exe #EndRegion ;**** 参数创建于 ACNWrapper_GUI **** #cs ____________________________________ Au3 版本: V3.3.6.1 脚本作者: Yusky Email: i@yusky.me QQ/TM: 6783138 脚本版本: v11 脚本功能: SoftWareAutoInstall #ce _______________脚本开始_________________ Opt("WinDetectHiddenText",1) Opt("WinTitleMatchMode",4) Opt("TrayAutoPause",0) ;最小化所有窗口 WinMinimizeAll() $sMsgBox_Title = "自动安装 By:Yusky" $sAppName = "“Kmplayer Plus 2010”" $sInstallerName = "Kmplayer Plus 2010.exe" ;此段脚本判断安装文件是否存在,如果不存在提示消息框后退出 ;~ $sCannotFindInstaller = "安装终止:无法找到安装程序" ;~ If Not FileExists($sInstallerName) Then ;~ $MsgBox_Text = $sCannotFindInstaller & @ScriptDir &""& $sInstallerName ;~ MsgBox(270352, $sMsgBox_Title , $MsgBox_Text, 5) ;~ Exit ;~ EndIf ;此段脚本显示确认继续安装消息框,消息框为是和否 $sSureContinue = "将自动安装软件,要继续吗?" $sWarnning = "警告:安装前请先退出所有正在运行的 Windows 应用程序。" $MsgBox_Text = $sAppName & $sSureContinue & @CRLF & @CRLF & $sWarnning ;选择“否”则退出,否则继续执行脚本 If (MsgBox(270372, $sMsgBox_Title, $MsgBox_Text, 2) = 4) Then ;退出 Exit Else ;执行安装程序 Run($sInstallerName) EndIf ;显示托盘区气球,“正在安装....” $sSetupNow = "正在安装" $sTrayTip_Text = $sSetupNow & $sAppName $sTrayTipIcon = 1 ; 0=没有图标(默认) , 1=消息, 2=警告, 3=错误 TrayTip($sMsgBox_Title, $sTrayTip_Text, 10,$sTrayTipIcon) ;定义常量字符串 $TITLE = "Kmplayer Plus 2010" $TITLE2 = "Kmplayer Plus 文件关联 " $TITLE3 = "设置程序 - Kmplayer Plus 2010" $Comment1 = "欢迎使用“Kmplayer Plus”安装向导" $Comment2 = "许可证协议" $Comment3 = "选择组件" $Comment4 = "超级兔子" $Comment5 = "选择安装位置" $Comment6 = "正在安装" $Comment7 = "选择文件格式" $Comment8 = "正在完成“Kmplayer Plus”安装向导" $Comment9 = "" ;欢迎 WinWait($TITLE, $Comment1) If Not WinActive($TITLE, $Comment1) Then WinActivate($TITLE, $Comment1) WinWaitActive($TITLE, $Comment1) ;点击“下一步(&N)>”按钮,快捷键Alt+N Send("!N") ;“许可证协议”窗口 WinWait($TITLE, $Comment2) If Not WinActive($TITLE, $Comment2) Then WinActivate($TITLE, $Comment2) WinWaitActive($TITLE, $Comment2) ;点击“我接受(&I)>”按钮,快捷键为Alt+I Send("!I") ;选择组件 WinWait($TITLE, $Comment3) If Not WinActive($TITLE, $Comment3) Then WinActivate($TITLE, $Comment3) WinWaitActive($TITLE, $Comment3) ;选择“完整安装” ControlClick($TITLE, $Comment3 ,"ComboBox1") Send("{DOWN}") Send("{Enter}") ;点击“下一步(&N)>”按钮,快捷键Alt+N Send("!N") ;取消安装“超级兔子” WinWait($TITLE, $Comment4) If Not WinActive($TITLE, $Comment4) Then WinActivate($TITLE, $Comment4) WinWaitActive($TITLE, $Comment4) ;取消选项1/1 "安装 超级兔子2010" If ControlCommand($TITLE, $Comment4, "Button4", "IsChecked", "") Then ControlCommand($TITLE, $Comment4, "Button4", "UnCheck", "") EndIf ;点击“下一步(&N)>”按钮,快捷键Alt+N Send("!N") ;选择“安装位置” WinWait($TITLE, $Comment5) If Not WinActive($TITLE, $Comment5) Then WinActivate($TITLE, $Comment5) WinWaitActive($TITLE, $Comment5) ;修改安装路径为D盘 WinWaitActive($TITLE, $Comment5, "Edit1") Send("{Home}{Delete}D") ;点击“下一步(&I)>”按钮,快捷键Alt+N Send("!I") ;正在安装 WinWait($TITLE, $Comment6) If Not WinActive($TITLE, $Comment6) Then WinActivate($TITLE, $Comment6) WinWaitActive($TITLE, $Comment6) ;点击“显示详情”按钮, ControlClick($TITLE, $Comment6, "Button4") ;灰化“取消”按钮 ControlDisable($TITLE, $Comment6, "Button3") ;Kmplayer Plus 文件关联 WinWait($TITLE2, $Comment7) If Not WinActive($TITLE2, $Comment7) Then WinActivate($TITLE2, $Comment7) WinWaitActive($TITLE2, $Comment7) ;关联“Kmplayer Plus” 到“所有视频格式” ControlClick($TITLE2, $Comment7, "ComBoBox1") Send("{DOWN}") Send("{Enter}") ;点击“确定(&O)>”,快捷键为“Alt+O”,完成选择 Send("!O") ;安装完成 WinWait($TITLE, $Comment8) If Not WinActive($TITLE, $Comment8) Then WinActivate($TITLE, $Comment8) WinWaitActive($TITLE, $Comment8) ;取消“1/1”运行 Kmplayer Plus 设置程序 ;ControlClick($TITLE, $Comment8, "Button4") ;点击“完成”按钮,快捷键为Alt+F Send("!F") ;设置“解码方案” WinWait($TITLE3, $Comment9) If Not WinActive($TITLE3, $Comment9) Then WinActivate($TITLE3, $Comment9) WinWaitActive($TITLE3, $Comment9) ;设置“解码模式”为“默认设置” ControlClick($TITLE3, $Comment9, "TTntComboBox.UnicodeClass11") Send("{DOWN}") Send("{Enter}") ;点击“确定”。完成设置.无快捷键 ControlClick($TITLE3, $Comment9, "TTntButton.UnicodeClass4") ;安装完成.退出程序 Exit
此次增加了安装前“最小化所有窗口”,两个消息框以及显示托盘去气球,正在安装。
使用的是先定义常量字符串,然后编写的时候调用“常量字符串”。
下面给出源码下载地址,以及一个编译好的自动安装程序。
Autoit3源码:点击进入下载
已编译好的:点击进入下载
注意:此自动安装需配合Kmplayer Plus 2010.
使用方法:将Kmplayer Plus 2010与已经编译好的自动安装程序,放在同一个目录。
Enjoy
By: Yusky
原创作品。欢迎翻版,翻版不究
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(10)
谢谢。我文采比较烂的。
新版的啊,可以试试
测试软件。是一件很有趣的事情。嘿嘿
呵呵 其实你的站还是很好看的
内容加速更新啊 能做好的
额 对了 我是海天 这段时间可能要用这个名字 具体原因到我博客看吧 还需要你们帮忙呢
嗯。哈哈。 没事。 新论坛哦。 支持你
All people deserve very good life time and loan or just collateral loan will make it better. Just because people’s freedom depends on money.
呵呵 自己写的吗?很不错啊 加油~
嗯。是自己写的。不过某些地方是山寨的。嘎嘎
你的 guestbook 竟然没有留下 comment form,没法留言啊。
嗯,彩色 tags cloud 真不错,应该是我写的那个,嘿嘿。
请教。 我的GUESTBOOK。明明开启了评论功能,但是却留言不了。不知道是咋回事啊。
嘿嘿。那个彩色TAGS CLOUD当然不错啦。 也不看看是谁写的。 嘿嘿