关于压缩工具 7z(7-zip) 如何创建自释放档案(选项 -sfx 的解读)

一、选项 -sfx 介绍

选项 -sfx 用于创建自释放档案时指定自释放模块。可以和此选项结合使用的命令有:a (添加), d (删除), u (更新) 。

语法格式:
-sfx[{SFX_Module}]

{SFX_Module} 指定将被添加到压缩档案的自释放(SFX)模块。然而被指定的模块必须和 7z.exe 文件在同一目录。如果 {SFX_Module} 未指定,7-Zip 将使用命令行自释放模块 7zCon.sfx。

二、自释放安装模块

SFX_Module说明
7zC.sfxWindows 版本。
7zCon.sfx命令行(DOS)版本。
7zS.sfxWindows 安装版本。
7zSD.sfxWindows 安装版本(需调用 MSVCRT.dll)。

除 7zC.sfx 之外,大多数的自释放模块都是未压缩的。 您可以使用 UPX 程序 (http://upx.sourceforge.net) 来压缩这些模块。在使用 UPX 程序压缩之后,自释放模块的大小将比压缩之前减小 40-50%。

自释放安装模块(7zS.sfx 和 7zSD.sfx)可让您创建软件的安装程序。这类模块将释放文件到一临时文件夹,然后运行指定的程序来进行安装。安装完后再自动删除临时文件。

三、创建自释放档案(创建安装程序)

要创建自释放档案必须有三个文件:自释放模块、安装程序配置、7z 压缩档案。其中安装程序配置文件是可选的。您可以使用下列命令来创建安装程序:

copy /b 7zS.sfx + config.txt + archive.7z archive.exe

请注意上述文件的输入顺序:*.sfx*.txt*.7z。最后的 archive.exe 即为生成的安装程序。选项 -y 可设置释放时是否为安静模式。

(一)安装程序配置文件格式

配置文件包括安装程序的命令行。文件要以字串 ;!@Install@!UTF-8! 开头,以 ;!@InstallEnd@! 结尾。且文件必须使用 UTF-8 编码。文件中还需包含下列变量(ID_String=“Value”):

ID_String说明
Title对话框信息标题。
BeginPrompt安装前提示信息。
RunProgram欲执行命令。若添加子命令 %%T 则会把文件释放到系统的临时目录。

您可以省略上述任何一部分。

(二)配置文件示例

;!@Install@!UTF-8!
Title="7-Zip 1.00"
BeginPrompt="应用程序将安装 7-Zip 1.00,是否继续?"
RunProgram="Setup.exe /T:%%T"
;!@InstallEnd@!

程序将以 BeginPrompt 中的信息提示用户,再执行 RunProgram 中的命令。然后程序将使用 .inf 文件的内容并调用压缩包中的 advpack.dll 文件进行安装。

四、创建自释放档案示例

(一)添加 *.txt 文件到自释放档案 a.exe 并使用默认的命令行自释放模块

7z a -sfx a.exe *.txt

(二)添加所有文件到自释放档案 a.exe 并使用 7zC.sfx Windows 版本的自释放模块

7z a -sfx7zC.sfx a.exe * -r
7z SFX Constructor 4.4– 是用于创建/编辑 7z SFX 自解压归档文件的程序。 该程序的设计是专为不了解程序设计和脚本配置的用户, 通过使用以前收集的"高级"的"句柄" , 不必在应用程序创建时读取任何指令. 简单模式选项只需要三步骤: 1. 选择或拖放项目的文件夹。 2. 选择运行文件。 3. 点击: 生成 7z SFX。 第二脚本模式选项, GUI处理主窗口和自定义脚本。 第三高级模式选项(检查证书模块),创建自己的证书。 7z SFX Constructor - программа для создания/редактирования самораспаковывающихся 7z SFX архивов. Предназначена как для пользователей без знания принципов сборки и конфигурации скриптов, так и для "продвинутых", которые ранее собирали "ручками". Программа устроена таким образом, что не надо читать никаких инструкций в начале применения. Что бы попробовать, достаточно выполнить три шага: 1. Выбрать или перетащить папку проекта. 2. Выбрать файл выполнения. 3. Нажать: Собрать 7z SFX. Это первый, начальный вариант. Второй вариант, чуть разобраться с главным окном и настроить под себя. Третий продвинутый, изучение скриптов, в начале что создает программа, (изучая справку модуля), а уж после, создание своих.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值