最近在开发过程中遇到 Advance Installer 编包太慢的问题,通过梳理发现是部分配置文件太多(基本不修改),模块大太且零散(模块也不怎么修改),所以想着是不是能把这些文件做成压缩包,然后打进 exe中,在安装的过程中在解压开,实测效率提示明显(文件越零散,优化效果越好)。
实现方法:
一、批处理脚本
unzip_Test_calfile.bat
@echo off
setlocal enabledelayedexpansion
cls
set p0=%0
set p1=%1
echo bat file: %p0%
echo UserProfileFolder: %p1%
::当前目录
set localpath=%~dp0
echo current path: %localpath%
::判断软件是否安装
set installPath=%localpath%\CalFile
IF EXIST %installPath% (
set installPath=%installPath%
echo App is installed and the target dir is %installPath%
goto UPDATE_CALFILE
)
echo Error: App is not installed in target dir %installPath%
:: 解压 CalFile 文件压缩包
:UPDATE_CALFILE
WinRAR.exe x -ibck -y Test\\Test.rar .
WinRAR.exe x -ibck -y %p1%\\Test2\\Test2.rar %p1%
二、Aip 文件配置
1、将批处理脚本,WinRAR.exe工具包,加入到 aip 配置文件中
2、自定义操作:
1)自定义操作中,“添加自定义操作” 中添加 “LaunchFile”
2)“LaunchFile” 配置:
属性:
启动文件:鼠标放到输入框,右击,选择"文件",选择你想要调用的批处理脚本“unzip_Test_calfile.bat”
命令行:鼠标放到输入框,右击,我这里的入参是目录地址(其他的没有实验过)
勾选:”隐藏程序窗口“,可以将批处理的打印隐藏
”以管理员身份运行“,批处理脚本中,有需要管理员身份才能运行的命令,可以选中这个
执行时间:
勾选:”系统已成功修改后(提交)“ , 其他的没有实验过,