如何制作自己的Windows Service Pack
2007-02-20 12:13:57 来源:WEB开发网SERVICES.EXE
KERNEL32.DLL
[Uniprocessor.Kernel.files]
KERNEL32.DLL,UNIPROCKERNEL32.DLL
[Multiprocessor.Kernel.files]
KERNEL32.DLL
[SourceDisksFiles]
SERVICES.EXE=1
UNIPROCKERNEL32.DLL
KERNEL32.DLL=1
然后我们在hotfix.inf文件中搜寻MustReplace.System32.files,然后加入一行
SERVICES.EXE
为了以后方便,我们一般加上一些注释,编辑后的hotfix.inf文件的MustReplace.System32.files字段就成了下面这个样子:
[MustReplace.System32.files]
;Q269523 Added by Adam
SERVICES.EXE
接着搜寻CopyAlways.DriverCab.files、Cache.files、Uniprocessor.Kernel.files、Multiprocessor.Kernel.files、SourceDisksFiles,并将相应的信息添加到hotfix.inf文件中,也要注意添加必要的注释文件,inf文件中表示注释的符号为分号。当然,我们也建议您把本身的模板文件中必要的项也作一下注释,如2个hotfix都包含的Cache.files,我们修改后就成了:
[Cache.files]
;Q269523 Added by Adam
SERVICES.EXE
KERNEL32.DLL
;Q270676 Added by Adam
winzm.ime
winsp.ime
winpy.ime
wingb.ime
winabc.ime
实际上,到这一步,我们就已经可以用我们作好的东东了,但是为了以后的方便,我们必须修改一些显示信息,这就是inf文件中的Strings字段。我们到inf文件的最末尾可以看到Strings字段,我们必须在这里修改一些必要的信息。
首先修改Q号(不是OICQ号码哦),将Q号改成你喜欢的6位数,当然,输入其他字符也可以,但是也许会和某些查HotFix的软件有冲突,还是用6位数字好了,然后修改Comments,我们把Q269523的Comment粘贴过来,也可以加上一些自己的描述,修改后的Strings字段就成了下面的样子:
[Strings]
LangTypeValue=4
ServicePackSourceFiles="Windows 2000 Hotfix 源文件"
HOTFIX_NUMBER="Q123456"
SERVICE_PACK_NUMBER=1
COMMENT="Windows 2000 Hotfix (Pre-SP2) [See Q270676 for more information] This Fix Corrects the IME Problem...Windows 2000 Hotfix (Pre-SP2) [See Q269523 for more information] This Fix Corrects the NamePipe Problem..."
这样也方便我们日后对已安装的补丁进行查看。
4、好了,该修改的地方我们已经弄完了,我们开始安装我们自己作的Service Pack吧,其实我们只要执行HotFix.exe即可,它会自己去找inf文件,然后你会看到一个拷贝文件的进度条,接着是系统要求你Reboot,点"确定",重启,我们的HotFix就安装完毕了。
5、最后我们可以看看效果,你可以去看看注册表:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionHotFix
你会发现你安装的Q123456乖乖地呆在那里了~很有成就感哦~
最后总结一下:每每出一个新的HotFix后,你就将文件添加到你的SP包中,然后修改你的inf文件,你就可以不去理会微软是不是还为你发布新的SP了(NT 4的SP 7没有了),当然,SP中不光包含安全补丁,对系统的其他方面也有所改善,必定不能和正版的软件相比。
更多精彩
赞助商链接