AutoIT如何制作自动化安装脚本-SketchUp 2017

本文介绍了一个用于自动化安装和卸载SketchUp2017的脚本,包括检查软件安装状态、自动卸载及安装流程,并通过关闭相关进程确保卸载的完整进行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Global $soft_name = "SketchUp 2017"
Global $soft_path = "安装文件所在路径"
Global $domain = "域"
Global $admin = "用户名"
Global $passwd = "密码"

;检查是否安装
If RegRead("hklm64\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{36CD1188-EAD6-4AA9-B9C8-94BE4852D67B}", "UninstallString") = 'MsiExec.exe /X{36CD1188-EAD6-4AA9-B9C8-94BE4852D67B}' Then
    If MsgBox(4,"提示",$soft_name & " 已安装,是否卸载") = 6 Then
        uninstall_su2017()
    Else 
        Exit
    EndIf
Else 
    setup_su2017()
EndIf


Func uninstall_su2017()
    ;检查进程是否存在
    If ProcessExists("SketchUp.exe") Then ProcessClose("SketchUp.exe")
    If ProcessExists("Style Builder.exe") Then ProcessClose("Style Builder.exe")
    If ProcessExists("LayOut.exe") Then ProcessClose("LayOut.exe")
    ;卸载
    MsgBox(0,'提示','开始卸载 ' & $soft_name,3)
    Run("msiexec /x {36CD1188-EAD6-4AA9-B9C8-94BE4852D67B}")

    WinWait("Windows Installer")
    WinActivate("Windows Installer")
    Send("!y")

    WinWait("SketchUp Pro 2017 (64-bit)")
    WinWaitClose("SketchUp Pro 2017 (64-bit)")


    If MsgBox(4,"提示",$soft_name & " 已卸载,是否重新安装") =6 Then
        setup_su2017()
    Else 
        Exit
    EndIf
EndFunc

Func setup_su2017()

    ;安装
    MsgBox(0,"提示","开始自动安装,请不要操作电脑",3)
    RunAs($admin, $domain, $passwd, 2, $soft_path & "\SketchUpPro2017-zh-CN-x64.exe", $soft_path)

    Opt("WinTitleMatchMode", 2)
    WinWait("Extracting Installer")
    WinWaitClose("Extracting Installer")

    If WinWait("SketchUp Pro 2017-64-bit (中文-简体中文) 安装程序","","3") Then 
        WinActivate("SketchUp Pro 2017-64-bit (中文-简体中文) 安装程序")
        Send("!i")
    EndIf

    WinWait("SketchUp Pro 2017 (64-bit) 安装","欢迎使用")
    WinActivate("SketchUp Pro 2017 (64-bit) 安装","欢迎使用")
    Send("!n")

    WinWait("SketchUp Pro 2017 (64-bit) 安装","目标文件夹")
    WinActivate("SketchUp Pro 2017 (64-bit) 安装","目标文件夹")
    Send("!n")

    WinWait("SketchUp Pro 2017 (64-bit) 安装","准备安装")
    WinActivate("SketchUp Pro 2017 (64-bit) 安装","准备安装")
    Send("!i")

    WinWait("SketchUp Pro 2017 (64-bit) 安装","已完成")
    WinActivate("SketchUp Pro 2017 (64-bit) 安装","已完成")
    Send("!f")

    ;激活
    FileCopy($soft_path & "\替换文件\SketchUp.exe","C:\Program Files\SketchUp\SketchUp 2017",1)
    FileCopy($soft_path & "\替换文件\LayOut\LayOut.exe", "C:\Program Files\SketchUp\SketchUp 2017\LayOut",1)
    FileCopy($soft_path & "\替换文件\Style Builder\Style Builder.exe", "C:\Program Files\SketchUp\SketchUp 2017\Style Builder",1)
    MsgBox(0,"提示",$soft_name & " 安装完成",3)  

EndFunc
1.兼容msi,自动高亮目标程序,实时生成脚本 2.可导入其他非i-Autoit创建的Au3脚本并编译为EXE 3.自动读取安装程序图标,编译时也可以选择其他图标 4.可自定义编译EXE版本信息 5.支持组件多控件选择(例如标准树形treeviw、列表listview控件)、文本edit控件修改文本(例如安装路径、序列号输入) 6.新增隐藏自动安装模式,不过尚未完美 7.模式切换分为控件模式和鼠标位置模式,切换快捷键和暂停捕捉快捷键均可自定义设置 8.可自定义是否在控件点击时左上角提示相关信息 9.可自定义运行脚本是否需要托盘提示目前代码行数和对应代码 10.其他功能(打包、删除文件,添加、删除启动项,查杀进程和随机窗口)可方便生成相应代码并可一键复制 日后根据反馈陆续推出动画教程,暂时补个简单文字教程: 1.将目标程序拖到“安装程序”的文本框,点击运行 2.程序启动并高亮置顶,此时别太急,尤其是那些需要释放文件的程序,稍等片刻再开始按照正常安装步骤点击相应按钮 3.如果需要修改安装路径或输入注册码,请在第1步前将路径复制好,然后单击文本框,会弹出一个提示框,输入需要修改的路径即可 4.检测到点击其他控件(标准树形treeviw、列表listview控件)会自动转换成相对位置点击 5.某些控件如果发现不支持或者控件结构非常复杂,可以尝试切换为鼠标模式用相对位置模拟点击 6.如果需要关闭进程或者窗口之类的,可以在“其他功能”里面的选项使用对应功能生成代码并一键复制后转到“安装脚本”选择合适位置右键选择粘贴代码即可 7.测试代码:在“安装脚本”界面右键选择“测试代码”即可生成临时测试程序并运行 8.编译代码:选择图标或保留源程序图标后再自定义版本信息(也可不定义)编译即可,在目标程序同目录下生成安装脚本程序 9.导入脚本:将目标脚本拖入“运行编译”的“安装脚本”右侧文本框,点击导入即可 10.隐藏安装模式:部分软件无法兼容,还需继续更新完善,有兴趣的可以自行测试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值