基于nsis安装示例

Program Files\NSIS\Examples\Modern UI\Basic.nsi

原理是将7za.exe打包到安装文件,并利用其解压安装包,同时不显示console而将输出到标准安装日志对话框中
使用7za.exe制作分卷压缩包(7z也可以)

7za a filename.7z path\*.* -r -v100m

在标准安装section中,例如Section "Dummy Section" SecDumy,添加如下代码

;ADD YOUR OWN FILES HERE...
File "7za.exe"
nsExec::ExecToLog '"$INSTDIR\7za.exe" x "$EXEDIR\filename.001" -o"$INSTDIR" -aoa'
Delete "$INSTDIR\7za.exe