想要制作一个一键打包并生成安装包(或安装程序)的小工具, 个人总结, 希望能帮到你.
本文用以下例子说明.
一个项目, 包含两个文件, app.yaml 和 app.exe.
- 什么是安装程序?
- 一个可执行文件
- 一个包含项目所有文件(本例为app.yaml和app.exe)的一个压缩包
- 在执行完之后会在安装目录添加项目文件(app.yaml 和 app.exe)的可执行程序
- 生成安装包的逻辑
- 打包项目文件, 即将项目文件压缩(加密), 如a.zip
- 生成安装包文件的可执行代码, 即在安装时所执行的程序, 此部分程序的重要功能:
- 解压(解密)在第1步生成的压缩(加密)文件
- 将解压(解密)出的文件移动到安装目录
- 将可执行代码编译成可执行文件, 如a.exe
- 将可执行文件与压缩文件以某种格式合并为一个文件, 即a.exe+a.zip
- 生成安装包完成
- 点击或执行安装包之后的逻辑
- 运行可执行代码部分, 即执行a.exe
- 可执行代码须解压(解密)出项目文件, 即a.zip
- 将解压(解密)出的项目文件(即将a.zip解压)移动到安装目录
- 安装完成
需要注意, 在生成安装包过程中, 将可执行文件与压缩文件以某种格式合并, 合并后的文件须仍可执行, 但仅执行文件中的a.exe部分.