2008年8月12日星期二

7-Zip

ee.zsy编写中...
08.8.12~08.8.13

为7zip制作自解压包


FileName: \7-Zip\7-zip.chm(部分翻译 7zip的帮助文件 节选)

自解压模块
Specifies the SFX module that will be combined with the archive.

SFX_模块 描述
7z.sfx Windows版本.
7zCon.sfx 控制台版本.
7zS.sfx 用于安装程序的Windows版本.
7zSD.sfx 用于安装程序的Windows版本(使用 MSVCRT.dll).

All SFX modules are uncompressed. You can use UPX program (http://upx.sourceforge.net) to compresss such modules. After compressing by the UPX program, the size of the sfx module will be reduced to 40-50% of its original size.


FileName: \7z458_extra\Installer\readme.txt(部分翻译 用于制作安装程序的自解压文档的说明文件)

7-Zip for installers 4.58
-------------------------

7-Zip is a file archiver for Windows 98/ME/NT/2000/2003/XP.

7-Zip Copyright (C) 1999-2007 Igor Pavlov.

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

7zr.exe is reduced version of 7za.exe of 7-Zip.
7zr.exe supports only 7z format with this codecs: LZMA, BCJ, BCJ2, Copy.

Example of compressing command for installation packages:

7zr a -t7z archive.7z * -m0=BCJ2 -m1=LZMA:d25:fb255 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3 -mx


7zSD.sfx 是用于安装程序的自解压模块 (它使用 msvcrt.dll)

用于安装程序的自解压模块(7zS.sfx and 7zSD.sfx)允许创建安装程序.
该模块把存档提取到临时文件夹,然后运行指定程序,并在程序完成后删除临时文件. 用于安装的自解压存档必须通过连接三个文件来创建: SFX_Module, Installer_Config, 7z_Archive.
Installer_Config是可选文件. 您可以使用以下命令创建安装程序自解压存档:

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

The smallest installation package size can be achivied, if installation files was
uncompressed before including to 7z archive.

-y switch for installer module (at runtime) specifies quiet mode for extracting.

安装配置文件格式
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
配置文件包含用于安装的命令.
文件必须以字符串
;!@Install@!UTF-8!
开始,并以
;!@InstallEnd@!
结束.
文件必须以UTF-8编码编写.
文件包含字符串对:

ID_String="Value"

ID_String
>>描述

Title
>>消息标题
BeginPrompt
>>开始提示消息
Progress
>>值可以是 "yes" 或 "no". 默认值是 "yes".
RunProgram
>>用于执行的命令. 默认值是 "setup.exe".
>>子字符串 %%T 将被替换为文件展开的临时文件夹的路径
Directory
>>"RunProgram"的起始位置. 默认值是 ".\\"
ExecuteFile
>>用于执行的文件名
ExecuteParameters
>>"ExecuteFile" 的参数


你可以省略任何值.

有两种方式来执行程序: RunProgram 和 ExecuteFile.
Use RunProgram, 如果你想.7z 文档中的运行某个程序.
Use ExecuteFile, 如果你想打开.7z 文档中某个文档或者如果你想执行某个Windows命令.

如果您使用RunProgram并且起始位置指定为空: Directory="",
系统以下列顺序搜寻可执行文件:

1. 应用程序(安装包)被加载的目录
2. 文件被展开的临时文件夹.
3. Windows系统目录.


配置文件示例
~~~~~~~~~~~~~~~~~~~~

;!@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@!



7-Zip SFX with enhanced features
FileName: \7zS_Tools\7zSD_EN.chm(部分翻译 7-Zip SFX增强版的说明文件)


7z SFX modified module
7-Zip SFX with enhanced features


备注:官方的SFX模块可以用PE资源编辑软件编辑自解压模块的图标,字符串,对话框等资源,也可以用upx进行压缩。

相关链接
7-Zip Home http://www.7-zip.org/
7-Zip SFX with enhanced features http://www.7zsfx.info/

没有评论: