7-zip制作自解压包很方便,只要在压缩时选择”创建自释放程序”选项。
而自解压安装包有点麻烦,不如WinRAR方便。
准备工具:
下载 LZMA SDK 这里面有 7zSD.sfx (16.04版7zS2.sfx在Win7中不弹出对话框,下载9.20版7zS.sfx与16.04版7zSD.sfx)。
下载 ResourceHacker 用于修改 图标与属性
已经压缩好的7Z文件
制作UTF-8无BOM的config.txt文件
自解压模板说明
SFX_Module Description
7z.sfx Windows version.
7zCon.sfx Console version.
7zS.sfx Windows version for installers.
7zSD.sfx Windows version for installers (uses MSVCRT.dll).
config.txt说明
首行 ;!@Install@!UTF-8!
未行 ;!@InstallEnd@!.
ID_String="Value"
ID_String Description
Title 对话框标题
BeginPrompt 对话框提示
Progress 对话框按钮,可以是"yes" or "no",默认为"yes"
RunProgram 7z文件内可执行文件名,默认为"setup.exe"。%%T 可替代临时解压路径。
Directory "RunProgram"的路径,默认为".\\"
ExecuteFile 7z文件内或Windows系统中可执行文件名
ExecuteParameters "ExecuteFile" 的参数。
三个官方范例
;!@Install@!UTF-8!
Title="7-Zip 4.00"
BeginPrompt="Do you want to install the 7-Zip 4.00?"
RunProgram="setup.exe"
;!@InstallEnd@!
;!@Install@!UTF-8!
Title="7-Zip 4.00"
BeginPrompt="Do you want to install the 7-Zip 4.00?"
ExecuteFile="7zip.msi"
;!@InstallEnd@!
;!@Install@!UTF-8!
Title="7-Zip 4.01 Update"
BeginPrompt="Do you want to install the 7-Zip 4.01 Update?"
ExecuteFile="msiexec.exe"
ExecuteParameters="/i 7zip.msi REINSTALL=ALL REINSTALLMODE=vomus"
;!@InstallEnd@!
生成安装包:copy /b 7zS.sfx+config.txt+archive.7z archive.exe
二个制作安装包的工具,各有特点。
7z SFX Builder 2.1
7-Zip SFX Maker 3.3 [ResourceHacker 改名 ResHacker.exe 后放入]