蓝色动力网络

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 3240|回复: 0

整合包制作入门

[复制链接]
发表于 2009-4-10 12:41:22 | 显示全部楼层 |阅读模式
按照不同的制作思路,将整合包分为四类。

一,利用CMD命令来默认安装

这种方式适宜整合一些比较小的而且支持默认安装或者可绿化的软件。

下面以我所做的“微软虚拟光驱整合包”为例,介绍一下具体的做法。

1. 新建配置文件,并命名为entries_msvcd.ini。配置文件一定要以entries开头。

[general]
builddate=2006/02/25
description=微软虚拟光驱整合包
language=简体中文
title=msvcdTool
version=1.0
website=唯纯科技 QQ:317786386

[dosnet_files]
d1,mscd.exe ;指明mscd.exe存在于I386文件夹中

[txtsetup_files]
mscd.exe = 1,,,,,,,45,0,0 ;告诉setup要将mscd.exe复制到TEMP文件夹


[addhive] ;这一节是用添加注册表选项的
KLM,"Software\Microsoft\Windows\CurrentVersion\IntlRun","msvcd",,"temp\mscd.exe"
:利用注册表中的“IntlRun”将已经复制到TEMP中的MSCD.EXE运行一次。

HKLM,"Software\Microsoft\Windows\CurrentVersion\RunOnce","mscd",,"cmd.exe /c del /f /Q %systemroot%\temp\mscd.exe"
;利用“RunOnce”将TEMP中的MSCD.EXE删除。

2“微软虚拟光驱”包括2个文件,我们可利用WinRAR来创建一个自解压程序,并命名为Mscd.exe。再用Makecab将Mscd.exe压缩成mscd.ex_

3.再用Wincab将entries_msvcd.ini和mscd.ex_打包成“微软虚拟光驱整合包.CAB”。这样一个简单的整合包就做成了。



二,直接复制类,就是将程序中的各个文件直接复制到目标文件夹。有的程序还得添加相关的注册表项。

这种方式才是最纯真的整合。

下面还是以我所做的“光驱开关整合包”为例,介绍一下具体的做法。

1. 新建配置文件,并命名为entries_cd.ini。

[general]
builddate=2006/02/25
description=光驱开关整合包
language=简体中文
title=光驱开关
version=1.0
website=唯纯科技 QQ:317786386

[dosnet_files]
d1,Close.exe
d1,open.exe

[txtsetup_files]
close.exe = 1,,,,,,,2,0,0 ;将文件复制到System32文件夹中。
open.exe = 1,,,,,,,2,0,0

[addhive]
hkcr,"*\shell\弹出光驱\command",,,"Open.exe"
hkcr,"*\shell\关闭光驱\command",,,"Close.exe"
;在所有文件的右键添加打开和关闭光驱的命令链接。

hkcr,"Folder\shell\弹出光驱\command",,,"Open.exe"
hkcr,"Folder\shell\关闭光驱\command",,,"Close.exe"
; 在所有文件夹的右键添加打开和关闭光驱的命令链接。

2. 这个“光驱开关”程序包括2个文件Open.exe和Close.exe。
分别用ModifyPE.exe来处理一下:
用ModifyPE.exe Open.exe -c 指令来MOD一下,然后再makecab Open.exe,这样Windows在安装过程中就 会路过较验Open.ex_使安装可以 继续下去,当然,Windows会自动记录这一事件,在系统日志中可以看到。

3. 最后用Wincab来将entries_cd.ini,Open.ex_,Close.ex_打包即可。



三,以补丁的方式来整合地。这种方式最为简单。也是适宜用整合可默认安装或者绿色软件。

以“ResHacker整合包”为例,来进行说明。

1. 建立一个名为ResHacker的工作文件夹。

2.在“ResHacker”文件夹下建立一个名为“SVCPACK”的子文件夹和一个名为 “entries_Reshacker.ini”的配置文件。结构如下:
D:.

│ entries_Reshacker.ini

└─SVCPACK
Reshacker.exe

3.将创建好的自解压安装程序“Reshacker.exe”复制到“SVCPACK”文件夹中。

4.编写“entries_Reshacker.ini”的配置文件。
[general]
builddate=2006/02/25
description=Reshacker整合包
language=简体中文
title=Reshacker
version=3.0
website=唯纯科技 QQ:317786386


[EditFile]
I386\SVCPACK.INF,SetupHotfixesToRun,AddProgram ;用于运行“SVCPACK”文件夹中的程序。

[AddProgram]
Reshacker.exe

5.将“SVCPACK”文件夹和“entries_Reshacker.ini”打包。

四,利用INF文件来安装程序。此种方式比较灵活,可以整合大多数的程序。
下面以“Unlocker整合包”为例,来介绍。
1. Unlocker 是一个免费的右键扩充工具,使用者在安装后,它便能整合于鼠标右键的操作当中,当使用者发现有某个档案或目录无法删除 时,只要按下鼠标右键中的「Unlocker」,那么程序马上就会显示出是哪一些程序占用了该目录或档案,接着只要按下弹出的窗口中的 「Unlock」就能够为你的档案解套啰。Unlocker 不同于其它解锁软件的部分在于它并非强制关闭那些占用档案的程序,而是以解除档案与程序关连性的方式来解锁,因此不会像其它解锁程序一样因为强制关闭程序而造成使用者可能的数据遗失。
程序包括4个文件:
Unlocker.cfg
Unlocker.exe
UnlockerCOM.dll
UnlockerDriver4.sys
先将这4个文件用Wincab打包成Unlocker.cab

2.编写“entries_Unlocker.ini”的配置文件。
[general]
builddate=2006/03/01
description=Unlocker整合包
language=简体中文
version=1.7.2
website=唯纯科技 QQ:317786386

[sysoc] ;这节的作用是让Setup将要整合的程序作为Windows的一个组件来安装。也就是运行一下Unlocker.inf。
Unlocker=ocgen.dll,OcEntry,Unlocker.inf,HIDE,7

[dosnet_files]
d1,Unlocker.inf
d1,Unlocker.cab

[txtsetup_files]
Unlocker.cab = 100,,,,,,_x,,3,3 ;_x代表Unlocker.cab这文件未经压缩。
Unlocker.inf = 100,,,,,,,20,0,0

3.编写“Unlocker.inf”安装控制文件。并用Makecab将其压缩为“Unlocker.in_”
[Version] ;版本描述信息,主要用于版本控制。
signature="$CHICAGO$" ;适用于98以后的系统。

[DefaultInstall] ;执行安装。
OptionDesc = "Unlocker"
Tip = "Unlocker"
Modes = 0,1,2,3
CopyFiles = prog.main
AddReg = install_AddReg


[Optional Components] ;要操作的项目
Unlocker

[Unlocker]
OptionDesc = "Unlocker"
Tip = "Unlocker"
Modes = 0,1,2,3
CopyFiles = prog.main
AddReg =install_AddReg


[SourceDisksNames.x86] ;指明源盘信息。
1="MainProgramFiles","Unlocker.cab",,"i386"

[DestinationDirs] ;程序安装路径
prog.main = 16422,"Unlocker"


[SourceDisksFiles] ;指定安装时使用的源文件和盘符序列码、盘描述符。
Unlocker.cfg =1
Unlocker.exe =1
UnlockerCOM.dll =1
UnlockerDriver4.sys =1


[install_AddReg]
hkcr,"*\shellex\ContextMenuHandlers\UnlockerShellExtension",,,"{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}"
hkcr,"CLSID\{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}",,,"UnlockerShellExtension"
hkcr,"CLSID\{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}\InProcServer32",,,"%01%\UnlockerCOM.dll"
hkcr,"CLSID\{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}\InProcServer32","ThreadingModel",,"Apartment"
hkcr,"CLSID\UnlockerShellExtension",,,"{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}"
hkcr,"Directory\shellex\ContextMenuHandlers\UnlockerShellExtension",,,"{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}"
hkcr,"Folder\shellex\ContextMenuHandlers\UnlockerShellExtension",,,"{DDE4BEEB-DDE6-48fd-8EB5-035C09923F83}"
hklm,"SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved","{DDE4BEEB-DDE6-48fd-8EB5- 035C09923F83}",,"UnlockerShellExtension"


[prog.main]
Unlocker.cfg
Unlocker.exe
UnlockerCOM.dll
UnlockerDriver4.sys

4.将Unlocker.cab,Unlocker.in_,entries_Unlocker.ini打包。





啄木鸟winrar3.60 beta 1美化版NLITE整合包

制作心得:
1.首先分析要制作软件的安装过程及结果的作用;
2.先将运行所需要的文件放置到需要的位置;
3.观察安装安装过程中注册的文件(如LL文件等等),这是软件能够运行的关键;
4.winrar3.60 beta 1安装特点分析:
A.将所需要文件放置相关位置;(X:\Program Files\)
B.因为运行时可能需要在控制面板、开始菜单等地方添加相关设置,但值得庆幸的是我们要采用的这个版本很有其自身特点的。只要运行X:\Program Files\WINRAR\Uninstall.exe就一些OK了,详见下:

ENTRIES_WINRAR.ini

[general]                                        ;(常规) 区段用于存放关于你的整合包的特别信息
builddate=2006/4/7                                          ;制作创建时间
description=啄木鸟winrar3.60 beta 1美化版NLITE整合包      ;“修复程序和整合包”的说明
language=简体中文                                           ;软件语言
title=啄木鸟winrar3.60 beta 1美化版                        ;“修复程序和整合包”的名称
version=3.61                                                ;软件或包的版本,自动软件‘V’,所以只添写版本就可以了。
website=http://www.zmn120.net/                              ;“修复程序和整合包”的更多信息项(整合包的网站出处)
author=啄木鸟                                  ;自己的标注     
email=su_ht@163.com

[filenames]


[sysoc]                                                ;将被添加到 sysoc.inf 中的 “[Components]” 区段下
winrar=ocgen.dll,OcEntry,winrar.inf,HIDE,7               ;"winrar"针对其他的包要有独立性

[dosnet_files]                                             ;这个区段下的条目将被添加到 dosnet.inf 的[Files] 区段下
d1,winrar.inf                                             ; d1 代表着安装程序会在I386 目录 (默认情况下) 下寻找这个文件.
d1,winrar.cab                                             ;将软件的所有文件打包成.cab文件

[txtsetup_files]
winrar.inf = 100,,,,,,,20,0,0                                ;软件一般使用100就可以了,20是让安装程序把 winrar.inf 复制到 %windir%system32.
winrar.cab = 100,,,,,,_x,,3,3                                ;_x 代表着这个安装盘上的这个文件没有经过压缩. 如果没有这个, 那么安装程序会认为这个文件已被压缩过了. 这个对于保证安全性和可靠性很重要. 每个 XP 文件都被列在了 layout.inf 中, 包括这个文件的大小 (按字节计算).很明显, 一个文件的压缩前和压缩后的大小是不会相同的. 如果 txtsetup.sif 告诉安装程序 “某个文件未被压缩”,
那么安装程序就会在layout.inf 中查找它的文件大小以确保这个文件未经修改或是损坏. 如果文件大小与 layout.inf 中记录的不同,那么 XP 安装程序就会报错并停止安装. 这个能够保证安装程序的安全性, 以确定文件是否被修改过. 它还能验证文件是否已被损坏.如果文件已被损坏, 那么稍后安装时就可能会出现问题. 如果你以 _x 为关键字在 txtsetup.sif 进行搜索, 那么你就能找到所有未经压缩的 Windows 安装文件.


=============
WINRAR.inf

[Version]                                           ;用于确认 .inf 文件的基本版本信息
signature="$Windows NT$"

[DefaultInstall]
OptionDesc ="啄木鸟工作室 By啄木鸟"
Tip ="3.60 beta 1 NLITE整合包"
Modes =0,1,2,3                                      ;以上三行做适当带动套用即可
CopyFiles = WIN35.WINRAR,WINRAR.Formats             ;复制这两个段内的指定文件
AddReg = WINRAR.AddReg                              ;将定义段中的内容写入注册表

[Optional Components]
WINRAR                                              ;要保持和包中的CAB文件的文件名相同

[WINRAR]
OptionDesc ="啄木鸟工作室 By啄木鸟"
Tip ="3.60 beta 1 NLITE整合包"
Modes =0,1,2,3
CopyFiles = WIN35.WINRAR,WINRAR.Formats
AddReg = WINRAR.AddReg

[SourceDisksNames.x86]
1="WINRARProgramFiles","WINRAR.cab",,"i386"          ; 对应相关文件名即可

[DestinationDirs]
WIN35.WINRAR = 16422,"%RAR1_dir%"                    ;将定义段中指定的文件复制到指定地方
WINRAR.Formats = 16422,"%RAR2_dir%"                  ;16422=X:\Program Files\ ,论坛中有详细的列表

[SourceDisksFiles]                                   ;将所有的文件放在此段中定义
Default.SFX=1
Descript.ion=1
File_Id.diz=1
License.txt=1
Order.htm=1
Rar.exe=1
Rar.txt=1
RarExt64.dll=1
RarExt.dll=1
RarExtLoader.exe=1
RarFiles.lst=1
rarnew.dat=1
rarreg.key=1
ReadMe.txt=1
TechNote.txt=1
Uninstall.exe=1
Uninstall.lst=1
UnRAR.exe=1
UnrarSrc.txt=1
WhatsNew.txt=1
WinCon.SFX=1
WinRAR.cnt=1
WinRAR.exe=1
winrar.hlp=1
Zip.SFX=1
zipnew.dat=1
7z.fmt=1
7zxa.dll=1
ace.fmt=1
arj.fmt=1
bz2.fmt=1
cab.fmt=1
gz.fmt=1
iso.fmt=1
lzh.fmt=1
tar.fmt=1
UNACEV2.DLL=1
uue.fmt=1
z.fmt=1

[WIN35.WINRAR]                                           ;定义所以需要的文件,一般要根据安装文件所需要那些文件夹或者说目录而定
Default.SFX
Descript.ion
File_Id.diz
License.txt
Order.htm
Rar.exe
Rar.txt
RarExt64.dll
RarExt.dll
RarExtLoader.exe
RarFiles.lst
rarnew.dat
rarreg.key
ReadMe.txt
TechNote.txt
Uninstall.exe
Uninstall.lst
UnRAR.exe
UnrarSrc.txt
WhatsNew.txt
WinCon.SFX
WinRAR.cnt
WinRAR.exe
winrar.hlp
Zip.SFX
zipnew.dat

[WINRAR.Formats]
7z.fmt
7zxa.dll
ace.fmt
arj.fmt
bz2.fmt
cab.fmt
gz.fmt
iso.fmt
lzh.fmt
tar.fmt
UNACEV2.DLL
uue.fmt
z.fmt


[WINRAR.AddReg]
HKLM,"Software\Microsoft\Windows\CurrentVersion\RunOnce","WINRAR",0,"%SystemRoot%\Program Files\WINRAR\Uninstall.exe /setup /s"

;运行Uninstall.exe完成软件安装的最后设置, /setup 是安装参数 ,/s是静态参数,不然会出现一些窗口.
;%SystemRoot%是系统所在的跟目录
;HKLM 与 HKEY_LOCAL_MACHINE 相同


[Strings] ;定义软件所需要的目录
RAR1_dir = "WinRAR\"
RAR2_dir = "WinRAR\Formats"





nLite 整合包定义文件 entries.ini 说明以及相关补遗

基本上,这些个 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]<NEXT>filetoadd.exe<NEXT>|1


总的来说... 你应当首先指定 rvmtemp 文件夹中的 "rvmtemp\svcpack.inf" 文件,   因为这个svcpack.inf 是用于编辑的. RyanVM integrator   所能编辑的文件一般都得在 rvmtemp 文件夹中.

然后添加一个 "|" 做为分隔符.

接着输入你要在 rvmtemp\svcpack.inf 文件中查找的文本. (无论何时何地你所输入的 <NEXT> 都代表着跳到这个区段的下一行.)

然后是另一个 |

接着你输入想要替换的文件. 这就是为什么我要输入 [setuphotfixestorun]<NEXT>filetoadd.exe<NEXT>
它实际上是写入了:
[setuphotfixestorun]
filetoadd.exe

然后是另一个 |

最后应当输入你要改变多少个实例. 如果在这个文件中多次找到了这部分文本, 那么整合程序就会按照你输入的次数进行替换. 如果你在这里放置的是 0, 那么整合程序将会改变所有发现的实例.
代码:
[ExtraFileEdits]
;文件名|将被替换的文本|用于替换的文本|替换次数
; <NEXT> 代表换行.
;例如 COMPDATA\3com.txt|Microsoft|Siginet|2
rvmtemp\svcpack.inf|[setuphotfixestorun]|[setuphotfixestorun]<NEXT>filetoadd.exe<NEXT>|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_
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

蓝色动力网络微信平台
网站管理,业务合作联系邮箱: admin#lansedongli.com    QQ:13412492 限网站业务问题.
网站帐号、密码、密保找回请使用注册邮箱,发送邮件至 password#lansedongli.com ,否则不予受理.
免责声明:本论坛所有文字和图片仅代表其个人观点.
本站某些资料或文章来自于互联网,不代表本站观点,如果侵犯了您的权益,请来信告知,我们会在三天内删除.
为了给大家一个更好的交流场所,请勿在本论坛发表与中华人民共和国法律相抵触的言论,请合作,谢谢!
Copyright © 2007-2019 Corporation Powered by网吧系统 版权所有    转载请注明!
浙ICP备11043737号 程序:Discuz! x3.4

湘公网安备 43018102000145号

手机版|Archiver|蓝色动力网络   

快速回复 返回顶部 返回列表