Jay*_*dse 28 command-line 7zip self-extracting
在红宝石的devkit是7-ZIP基于自解压压缩包.
我想静静地调用它,而不必安装7-Zip将文件解压缩到我选择的文件夹,这样我就可以编写安装脚本.我想它是这样的:
cmd> DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe /silent /dir="C:\DevKit"
Run Code Online (Sandbox Code Playgroud)
但是,这当然不起作用.我必须使用哪些命令行标志来静默地将此存档提取到我选择的文件夹中?
小智 35
试试这个:
C:\> DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe -o"C:\DevKit" -y
Run Code Online (Sandbox Code Playgroud)
Jen*_*och 13
2017年更新:7zsfx.info的工具现在已经死了.
原始,旧帖子从08-2015:
如果您要提取7zip SFX(http://7zsfx.info/)存档:
sfx.exe -y -gm2 -InstallPath="C:\\your\\target\\path"
-y 隐藏一些提示-gm2 完全隐藏提取对话框(静音模式)-InstallPath 设置目标路径(需要双反斜杠)7z SFX指南
创建SFX包的官方方法是使用-sfx[{name}] : Create SFX archive.
这意味着创建的SFX软件包使用两种CLI选项:
在创建包之前,您在配置中配置的传递选项.
您可以将其视为转发到打包的可执行文件的参数.此参数转发取决于SetEnvironment和RunProgramm配置!
整个过程:
Package.7z:
Installer.msi和附加crap.cab文件.创建配置文件config.txt:
;!@Install@!UTF-8!
Title="Installation"
SetEnvironment="strInstall=hidcon:Installer.msi /qn"
RunProgram="%strInstall%"
;!@InstallEnd@!
Run Code Online (Sandbox Code Playgroud)现在我们Test.exe通过将sfx + config + archive组合成一个可执行文件来生成.
copy /b 7zS.sfx + config.txt + Package.7z SfxInstaller.exe
注意:7zS.sfx来自官方的7zip额外包.
现在,当您运行时,SfxInstaller.exe您可以传递例如/lv InstallerLog.txt创建安装日志,例如
SfxInstaller.exe /lv InstallerLog.txt