基本上,这些个 Entrie*.ini 文件是 nLite 整合包里最重要的文件了. 它向整合工具提供了有关如何进行整合的数据. 随着时间的流逝, 会另外添加很多新功能... 但我只能在此列出目前了解到的定义.
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
文件头
这个文件头部只是用来说明相关信息的. 整合工具是用不到它的.
代码:
;############################################################################################
;# entries.ini
;# ---------------------
;# 这个文件包含了将被整合到 Windows 安装文件中的所有条目的列表.
;############################################################################################
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[general]
这个 general (常规) 区段用于存放关于你的整合包的特别信息.
builddate=你创建这个整合包的日期
description=关于这个整合包的信息.
language=你的整合包所使用的语言.
title=整合包的名称.
version=整合包的版本.
website=整合包的网站出处.
代码:
[general]
builddate=2005/08/24
description=RyanVM's Post-SP2 Update Pack for Windows XP
language=English
title=RyanVM Update Pack
version=1.3.1
website=http://ryanvm.msfn.org/
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[filenames]
这个 filenames 区段用于设置一个整合包环境变量. 例如... 整合包的关键 inf 文件. 以下实例设置的环境变量将会代替RVMUpPck.inf
%maininf% 只在这个 entries.ini 文件中有效.
在你所创建的整合包中, 这个信息必须是独一无二的. 请不要在不同的整合包中重复使用同样的信息!
代码:
;这个区段包含了用于 RyanVM 文件名的环境变量.
[filenames]
maininf=RVMUpPck.inf
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[sysoc]
Sysoc.inf
它是系统可选组件定义 Inf 文件, 用于在安装期间控制安装哪些 Windows 组件, 还可用于定义是否隐藏某个 Windows 组件.
对于整合包定义来说, 这个区段可有可无, 不是很重要. 目前主要是用于在安装期间让 Windows 启动处理RVMUpPck.inf 文件.
entries.ini 中的 [sysoc] 区段下的条目:
RVMUpdatePack=ocgen.dll,OcEntry,%maininf%,HIDE,7
将被添加到 sysoc.inf 中的 “[Components]” 区段下, 由于其中带有 HIDE, 你将无法在 Windows 组件向导中看到 RyanVM 条目.
ocgen.dll 和 OcEntry 是用于处理这行的 dll 文件及其入口
%maininf% 将被转换为 "RVMUpPck.inf" (这是很重要的部分)
7 是个数字, 我不了解它的具体含义.
你用 Google 搜索 sysoc.inf 就能看到很多相关介绍网页.
在你所创建的整合包中, 这个信息必须是独一无二的. 请不要在不同的整合包中重复使用同样的信息!
代码:
;这个区段所包含的条目将被添加到 Sysoc.inf 的 [Components] 区段下.
[sysoc]
RVMUpdatePack=ocgen.dll,OcEntry,%maininf%,HIDE,7
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[dosnet_files]
这个 dosnet_files 区段用于向 dosnet.inf 的 [Files] 区段下添加文件定义. 其格式通常为 ”d1,filename.ext”, d1 代表着安装程序会在I386 目录 (默认情况下) 下寻找这个文件. 你可以在 dosnet.inf 的 [Directories] 区段下找到 d1 所代表的路径.
代码:
;这个区段下的条目将被添加到 dosnet.inf 的[Files] 区段下
[dosnet_files]
d1,%maininf%
d1,archvapp.inf
d1,cobramsg.dll
d1,guitrna.dll
d1,wups2.dll
d1,xpsp3res.dll
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[txtsetup_dirs]
这个 [txtsetup_dirs] 区段用于给 Windows (应该说是系统根目录) 下的某个子路径分配一个占位号码. 这样 [txtsetup_files] 区段下的定义就可以使用这个路径代码了. 以下是个例子:
241 = system32\PreInstall\WinSE\wxp_x86_0409_v1
然后在 txtsetup_files 区段下你就能看到:
spcustom.dll = 100,,,,,,,241,0,0,spcustom.dll.ref
spmsg.dll = 100,,,,,,,241,0,0,spmsg.dll.ref
spuninst.exe = 100,,,,,,,241,0,0,spuninst.exe.ref
spupdsvc.exe = 100,,,,,,,241,0,0,spupdsvc.exe.ref
sysmoda.dll = 100,,,,,,,111,0,0
update.exe = 100,,,,,,,241,0,0,update.exe.ref
updspapi.dll = 100,,,,,,,241,0,0,updspapi.dll.ref
这个 241 会告诉安装程序将那些个文件置入
system32\PreInstall\WinSE\wxp_x86_0409_v1
文件夹中.
若想深入了解 [txtsetup_dirs] 和 [txtsetup_files], 请阅读以下帖子:
http://gosh.msfnhosting.com/txtsetup.htm 和
http://www.msfn.org/board/index.php?showtopic=14852 代码:
;以下条目将被添加到 txtsetup.sif 的 [WinntDirectories] 区段下
[txtsetup_dirs]
241 = system32\PreInstall\WinSE\wxp_x86_0409_v1
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[txtsetup_files]
若想深入了解 [txtsetup_dirs] 和 [txtsetup_files], 请阅读以下帖子:
http://gosh.msfnhosting.com/txtsetup.htm 和
http://www.msfn.org/board/index.php?showtopic=14852代码:
; 以下条目将被添加到 txtsetup.sif 的[SourceDisksFiles] 区段下
[txtsetup_files]
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[svcpack_catalogs]
总的来说, 当你安装修补程序包 Hotfix 时, 都会有一个对应的 .Cat 安全编录文件. 如果你想让你整合的修补程序包获得数字签名, 那么你就应当将 .Cat 安全编录置入这个地方.. 如果你不将其置入这里, 那么当你没有禁用系统文件保护的情况下安装 Windows 时, 很可能会遇到问题.
代码:
;这个区段包含了将被添加到 svcpack.inf 中的 .cat 安全编录列表
[svcpack_catalogs]
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[drivercab_expand]
这个区段下的条目是那些同时存在于 i386 文件夹中和 Driver.cab(包括 spx.cab 等等, 它们都是驱动包) 驱动包中的文件.
列在这里的文件将被展开到临时文件夹中, 然后整合程序会用其添加替换到驱动包中.
代码:
;以下列出的文件同时存在于 i386 文件夹中和 driver.cab 驱动包中.
;它们将被展开, 并在更新驱动包时, 将其添加到驱动包的处理目录中.
[drivercab_expand]
1394bus.sy_
atapi.sy_
usbehci.sy_
usbhub.sy_
usbstor.sy_
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[drivercab_move]
这个区段下的条目是那些只存在于驱动包中的文件列表. (Driver & SPx)
这些文件将被移动到临时文件夹中, 当更新驱动包的时候, 这些文件将被添加到驱动包中.
这些在整合包中时并没有被压缩, 当它们被移动到驱动包中之后才会被压缩.
代码:
;以下文件只存在于驱动包中
;更新驱动包时, 它们将会被移动到驱动包的处理目录中.
[drivercab_move]
plotter.dll
plotui.dll
unidrv.dll
unidrvui.dll
unires.dll
wzcsapi.dll
wzcsvc.dll
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[dupedrivers]
目前这个区段的功能还不能受到正确的支持. 有些文件同时存在于驱动包 (driver.cab, spx.cab) 和 i386 文件夹中, 它实际上是用于移除存在于驱动包中的重复文件的..
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[obsolete]
这个区段是用于告诉整合程序移除 svcpack.inf 中的对应条目, 以尽量避免造成修补程序包之间的冲突.
代码:
;这个区段包含了禁止安装的修补程序包, 以尽量避免冲突
[obsolete]
KB319740.cat
KB842520.cat
KB867795.cat
KB901026.cat
KB901214.cat
scripten.cat
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
[ExtraFileEdits] 目前仅受 RyanVM Integrator 支持.
[ExtraFileEdits] 区段目前仅受 RyanVM integrator 支持. 因此, 你不能在用于 nLite 的整合包中使用它. 但是它所能做的是允许你编辑一些本不可能编辑的东西.
比如下面这个就是向 svcpack.inf 的 [setuphotfixestorun] 区段下添加一些东西:
代码:
rvmtemp\svcpack.inf|[setuphotfixestorun]|[setuphotfixestorun]
filetoadd.exe|1
总的来说... 你应当首先指定 rvmtemp 文件夹中的 "rvmtemp\svcpack.inf" 文件, 因为这个svcpack.inf 是用于编辑的. RyanVM integrator 所能编辑的文件一般都得在 rvmtemp 文件夹中.
然后添加一个 "|" 做为分隔符.
接着输入你要在 rvmtemp\svcpack.inf 文件中查找的文本. (无论何时何地你所输入的 都代表着跳到这个区段的下一行.)
然后是另一个 |
接着你输入想要替换的文件. 这就是为什么我要输入 [setuphotfixestorun]filetoadd.exe
它实际上是写入了:
[setuphotfixestorun]
filetoadd.exe
然后是另一个 |
最后应当输入你要改变多少个实例. 如果在这个文件中多次找到了这部分文本, 那么整合程序就会按照你输入的次数进行替换. 如果你在这里放置的是 0, 那么整合程序将会改变所有发现的实例.
代码:
[ExtraFileEdits]
;文件名|将被替换的文本|用于替换的文本|替换次数
; 代表换行.
;例如 COMPDATA\3com.txt|Microsoft|Siginet|2
rvmtemp\svcpack.inf|[setuphotfixestorun]|[setuphotfixestorun]filetoadd.exe|1
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
* RyanVM Integrator v1.0 RC13 新添的定义*
[obsolete_files] 目前仅受 RyanVM Integrator 支持.
如果你发布了新版本的整合包, 并想删除 i386 目录中的某些旧版本文件, 那么就能用到这个定义了. 它会按照下面的列表删掉指定文件, 并且会把 dosnet.inf 和 txtsetup.sif 中的相关文件定义删掉.
第一步: 删掉 i386 文件夹中的相应文件.
第二步: 删掉 dosnet.inf 中的文件定义:
d1,yourfile.ext
第三步: 删掉 txtsetup.sif 中[SourceDisksFiles] 区段下的文件定义:
wmp10.cab =
代码:
[obsolete_files]
HashTab_Addons.inf
HashTab.dll
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
* RyanVM Integrator v1.0 RC13 新添的定义*
[old_sysoc] 目前仅受 RyanVM Integrator 支持.
主要用于删除 Sysoc.inf 中 [Components] 区段下的条目.
如果你想删除 Sysoc.inf 中的以下条目:
WMP10Files=ocgen.dll,OcEntry,wmp10.inf,HIDE,7
那么就应当使用以下代码.
代码:
[old_sysoc]
WMP10Files
==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ==== ====
* RyanVM Integrator v1.0 RC13 新添的定义*
[removable_cats] 目前仅受 RyanVM Integrator 支持.
这里列出可被安全移除的 .Cat 安全编录, 这样你就能选择整合程序的 "Remove .cat Files" 的选项了.
代码:
[removable_cats]
KB873339.ca_
KB887472.ca_
KB887710.ca_
KB887742.ca_