Windows XP集成安装光盘制作完全教程
[quote][size=4][color=red]特别说明:本文出自雨浪飘零教程,转自番茄花园,希望对有兴趣学习光盘制作的朋友有所帮助!
[/color][/size][/quote]
[quote]
[indent][size=4][color=red][color=red]第一章:制作集成SP2的Windows XP 安装光盘[/color] [/color][/size]
[color=royalblue]本章讲述如何制作一张集成SP2的Windows XP安装光盘。
[color=red]1、所需工具:[/color]
(1) XP安装光盘
(2) XP SP2
(3) Cdimage
(4) IsoBuster
(5) VMware(或Virtual PC)
[color=red]2、集成:[/color]
先把XP安装盘内的所有内容拷贝到硬盘的一个目录里,比如d:\xpcd\winxp。
用winrar解压SP2包,或者在“开始/运行”里输入“d:\xpsp2.exe /x”把它解压到硬盘,比如d:\xpcd\sp2。然后输入“d:\xpcd\sp2\i386\updte.exe -s:\xpcd\winxp”进行集成。
其实sp2已经具备了sp2包直接集成的功能,并不需要先解压了。你可以用 “d:\xpsp2.exe -s:\xpcd\winxp”命令直接集成。
[color=red]3、提取引导文件:
[/color]
把安装光盘放进光驱,打开IsoBuster,选中光盘所在光驱盘符,在“bootimage.img”点击右键,选择“抽取bootimage.img”并保存为文件,假设放到d:\xpcd目录下。
当然你也可以用现成的光盘引导文件,比如bootsect.bin等,这些都可以在网上找到,效果是相同的。
[color=red]4、制作光盘ISO:
[/color]
把cdimage.exe放到d:\xpcd目录下,在运行里输入“cdimage –lWinXPSP2 -t08/10/2004,00:00:00 -h -m -n –bd:\xpcd\bootimage.img CD d:\winxpsp2.ISO”,将会弹出一个正在制作ISO文件进程的Dos窗口,结束后,你就可以在你的d盘下看到你制作的光盘镜像文件了。
你可以直接刻盘,如果不放心的话,可以用DAEMON Tools等虚拟光驱加载它,看是否正常,还可以用VMware Workstation虚拟计算机来测试它是否能够引导,更可以安装它看是否完美。[/color][/indent]
[/quote]
[[i] 本帖最后由 charleyx76 于 2008-2-28 04:55 编辑 [/i]] [quote]
[indent][size=4][color=red]第二章:制作多合一的Windows XP SP2安装光盘[/color][/size]
[color=royalblue]本章讲述如何制作一张多个版本共同存在的Windows XP SP2安装光盘。也就是现在流行的多合一的安装光盘。这里我们以制作oem和vlk二合一版本为例来讲解,为了方便制作和讲解,建立统一目录,假设为d:\xpcd\winxp,此目录为光盘根目录。
[color=red]1、所需工具:[/color]
(1) 多个版本的XP安装光盘,这里我们以二合一为例来讲。
(2) XP SP2
(3) Cdimage
(4) IsoBuster
(5) UltraEdit
(6) Xxcopy
(7) Winimage
[color=red]2、准备工作:[/color]
a) 要下载Windows XP的启动软盘,它的作用是让光盘在启动时能够模拟软盘启动,做到一个软盘对应一个安装文件。大家放心,这里的启动软盘并不是Win98启动软盘,而是Windows XP专用的启动盘,它带有NTFS、SCSI、RAID等驱动,所以完全可以识别NTFS分区。
下载地址:(这个是PRO版的,只能用在PRO的安装盘上,)
[/color][url=http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=55820EDB-5039-4955-BCB7-4FED408EA73F][color=royalblue]http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=55820EDB-5039-4955-BCB7-4FED408EA73F[/color][/url]
[color=royalblue] 下载后用是个安装文件,不过不要安装,除非你有软驱(有软驱也很麻烦),直接以能干Winrar进行解压,解压后会有8个文件,其中6各是软盘镜像。如下图:
b) 用Winimage把其中的cdboot几个文件解压到同一个目录中,假设为d:\xpcd\root。
C) 把两张安装光盘里的内容分别拷贝到d:\xpcd\winxp下的两个目录内,假设为d:\xpcd\winxp\oem、d:\xpcd\winxp\vlk。
[color=red]3、集成SP2:[/color]
用 “d:\xpsp2.exe -s:d:\xpcd\winxp\oem”和“d:\xpsp2.exe -s:d:\xpcd\winxp\vlk”命令分别队两个版本安装文件集成SP2。
[color=red]4、替换启动盘组文件:[/color]
把d:\xpcd\root下面的文件用d:\xpcd\winxp\oem\i386目录下面的文件替换,即把启动软盘组中的文件也替换为集成SP2后的文件。注意:一定不要替换system32中的文件,否则无法安装。
要替换这一大堆文件比较繁琐,可以用xxcopy来做:把下载到的xxcopy放到d:\xpcd下,执行命令“xxcopy d:\xpcd\winxp\oem\i386 d:\win2k\root\ /U /E /YY”。Xxcopy的作用就是可以复制目标目录下的相同文件到原始文件夹。经过这样替换后,root目录下的文件都已经和i386目录下的文件一样了。
[color=red]5、复制文件[/color]
复制2份root文件夹到d:\xpcd\winxp目录,一个改名为oemx,一个vlkx,分别和oem版和vlk版的安装文件对应。
[color=red]6、修改setupldr.bin:[/color]
用Ultraedit打开d:\xpcd\winxp\oemx\setupldr.bin,用ASCII方式搜索替换“i386”为“OEMX”,总共有4个地方。注意,这里的oemx一定要是大写的,因为刻录成光盘后,这些文件夹和文件都会自动转换为大写的,如果在这里是小写的话,到时就会提示找不到NTDETECT文件了。因为这个文件是告诉安装程序从哪里启动。
用同样方法把d:\xpcd\winxp\vlkx\setupldr.bin中的i386替换为VLKX。
[color=red]7、修改txtsetup.sif:[/color]
用Ultraedit打开d:\xpcd\winxp\oemx\txtsetup.sif,搜索替换“SetupSourcePath = "\"”为“SetupSourcePath = "\oem"”;用Ultraedit打开d:\xpcd\winxp\vlkx\txtsetup.sif,搜索替换“SetupSourcePath = "\"”为“SetupSourcePath = "\vlk"”。这个文件时告诉安装程序从哪里复制安装文件。
[color=red]8、修改光盘引导文件:[/color]
用第一章里的方法提取光盘引导文件,复制两份,分别命名为oemxp.bin和vlkxp.bin。用Ultraedit打开oemxp.bin,搜索替换i386为OEMX;用Ultraedit打开vlkxp.bin,搜索替换i386为VLKX。都只有一处。
[color=red]9、制作启动菜单:[/color]
制作启动菜单的方法和工具有很多种,推荐使用现在最流行的图形化启动菜单制作工具easyboot。
把oemxp.bin和vlkxp.bin复制到d:\xpcd\winxp\ezboot目录中(这个文件夹是easyboot所带的存放引导文件的文件夹)。
在菜单命令行里分别对应oemxp.bin和vlkxp.bin,就可以分别引导oem版的XP和vlk版的XP了。Easyboot的使用方法请参考软件帮助,如果疑问比较多的话,我再专门开贴讲解。
[color=red]10、制作ISO:
[/color]
把cdimage.exe放到d:\xpcd目录下,在运行里输入“cdimage –lWinXP_SP2_2in1 -t08/10/2004,00:00:00 -h -m -n –bd:\xpcd\loader.bin CD d:\winxp_sp2_2in1.ISO”,将会弹出一个正在制作ISO文件进程的Dos窗口,结束后,你就可以在你的d盘下看到你制作的光盘镜像文件了。
你可以直接刻盘,如果不放心的话,可以用DAEMON Tools等虚拟光驱加载它,看是否正常,还可以用VMware Workstation虚拟计算机来测试它是否能够引导,更可以安装它看是否完美。
如果你要集成更多的xp版本的话,记本制作方法是一样的,你所需要改变的就是增加原装文件相对应的引导文件,例如启动盘组、引导文件等。[/color][/indent][/quote] [quote]
[indent][size=4][color=red]第三章 制作无人值守安装光盘[/color][/size]
[color=royalblue]前面两章我们学习了怎样制作集成SP的安装光盘,这张盘是一张很“干净”的安装盘。其实我们还可以对这张盘做更深的加工。主要目的:
1 集成零散的补丁
2 无人值守安装
3 替换某些破解文件
这一章我不想再写了,因为已经有一个很好的教程了,呵呵,偷懒一下,引用最完整的无人值守安装光盘的制作教学网站:[/color]
[color=#4169e1][/color]
[url=http://www.cctips.com/Unattended/xp/index.htm][color=royalblue]http://www.cctips.com/Unattended/xp/index.htm[/color][/url]
[url=http://www.yesky.com/SoftChannel/72348973209223168/20030918/1729780.shtml][color=royalblue]http://www.yesky.com/SoftChannel/72348973209223168/20030918/1729780.shtml[/color][/url]
[/indent]
[/quote] [QUOTE]
[indent][size=4][color=red]第四章:集成各种补丁和软件[/color][/size]
[color=royalblue]因为SP2刚刚出来,目前还没有可用的关键更新,所以我就暂时以SP1时代的补丁为例例进行说明。
[color=red]1、传统的集成方法[/color]
是采用微软的方法,即利用批处理来完成补丁程序的调用,再利用CMDLINES.TXT或者Winnt.sif中RunOnceE功能来实现补丁和其他程序的自动安装。系统安装时会寻找CMDLINES.TXT中的内容,并依次执行其中的内容。我们只要在“[Commands]”后面的每行中加入我们需要运行的程序或者批处理文件就可以实现自动安装。
方法:把所有需要安装的补丁(包括Directx9.0b、MediaPlayer9.0等)放到光盘“$OEM$\$1\INSTALL”目录下,再编写一个或多个批处理来让他们依次执行安装。在安装过程中,安装程序会先把“$1”目录下所有文件都拷贝到硬盘系统盘下,然后再执行CMDLINES.TXT或者Winnt.sif中的RunOnceE行来执行文件。
这种方法界面单一且不好看,是黑咕隆咚的很难看的DOS窗口。现在已经很少有人采用这种方法了。
[color=red]2、Xpinstall[/color]
Xpinstall是澳大利亚一位网友写的一个安装程序,它可以自动执行脚本,并用漂亮的界面代替DOS窗口。另外它还支持XML脚本,我们只需要在一个脚本文件里编写所有的执行命令。如果你要制作全自动集成安装光盘的话,它使你最好的选择。XPINSTALL最新版本是4.3版,你可以到
Xpinstall主文件有2个,还有一个文件夹,只要把XPINSTALL.EXE和XPINSTALL.XML这两个文件和IMAGES文件夹拷贝到“$OEM$\$1\INSTALL”目录下,并把所要安装的补丁和程序也拷贝到“$OEM$\$1\INSTALL”目录下。
剩下的事情就是编写XPINSTALL.XML了。你所需要修改的就是像“<file name='Applying Microsoft Jscript...' command='execute' program='#SYSTEMDRIVE#\INSTALL\Hotfixes\js56nchs.exe' arguments='/Q:A /R:N' />”这一段的内容,其中“file name='Applying Microsoft Jscript...”这一句是安装过程中显示在安装届面上的当前正在安装的补丁或者程序的名称;“#SYSTEMDRIVE#\INSTALL\Hotfixes\js56nchs.exe”这一处使指定所要执行文件的位置和名字;“arguments='/Q:A /R:N”这个是当前补丁或者程序的静默安装参数。
在这些行里修改所有的补丁和程序,把多余的行删除掉,然在后再CMDLINES.TXT或者Winnt.sif中的RunOnceE行指定运行xpinstall.exe就可以了。
其实XPINSTALL.XML里还有很多地方可以修改,比如开头的这一段,你可以在这里指定安装窗口显示名称、窗口位置、每次显示的数量等。这些你就自己去琢磨去吧。[/QUOTE]
[QUOTE]
[color=red]代码如下:[/color]
<hidewindow>Windows Update</hidewindow>
<show total='6' after='2' />
<font face='Tahoma' antialias='true' small='8' large='14' />
<window width='440' position='8' fixmain='0' />
<windowmode>Standalone</windowmode>
[/QUOTE]
[/color][/indent]
[[i] 本帖最后由 charleyx76 于 2008-2-28 04:47 编辑 [/i]] [quote]
[indent][size=4][color=red]第五章:如何在集成SP1的XP基础上制作完美VLK SP2版[/color][/size]
[color=royalblue]很多朋友希望能够在VLK版原盘的基础上集成sp2,以保证集成后的完美。其实完美不完美只是你的心理作用,因为集成sp2后,被替换的文件是相同的,也就是说你在原版的基础上集成出来的安装文件和在sp1基础上集成出来的安装文件,在效果上是一样的,唯一不同的只是在sp1基础上集成出来的有很多sp1时代留下的无用文件。有丰富集成SP经验的朋友都会知道的。
看到大家都在寻找VLK原版的安装盘,能找到固然是好事,找不到也不必那么费事,你要做的,就是删除那些SP1时代遗留的无用文件而已。我可以保证这样做出来的SP2安装盘和你在原盘基础上做出来的几乎是一模一样!下面我就讲一下如何在集成SP1的VLK版基础上制作完美的VLK SP2集成版。当然,如果有原版的VLK的话就不在讨论之列了。(问题在于你真的能找到吗?呵呵)
[color=red]1、准备:[/color]
未集成sp1的任何版本的XP安装盘(其实只要i386目录就可以)
集成SP1的VLK版XP安装盘
中文SP2 RTM 2180
BEYONDCOMPARE2(比较文件和目录的工具)
[color=red]2、集成:[/color]
a 分别复制原版的XP安装盘和集成SP1的VLK安装盘的所有文件到硬盘目录
b 解压SP2包
c 分别集成SP2到两个安装盘里
[color=red]3、比较:[/color]
打开BEYONDCOMPARE2,选择比较目录,分别指定两个版本安装盘的i386目录,确认后打开,这时你会看到软件的两边分别显示的是这两个目录内的文件。选择菜单 “查看--显示过滤器--仅不匹配”,这时你会看到只在SP1版vlk这边保留了一部分文件。这些文件是sp1时代留下的文件,属于多余文件,直接删除即可。究竟是多少个文件,我已经删除了我做盘时的文件,现在也懒得去验证了。不放心的话你可以把他们移动到一个文件夹,以便恢复。这时你再看看i386目录,因该是2766或者2767个文件(一个winnt.sif的差异),而且体积比未删除文件之前小了二十几M。删除根目录下的win51ip.sp1、SPNOTES.HTM连个文件。现在这张盘和你在原版基础上集成SP的光盘基本没有任何区别了!
你可以安装测试一下,看看你的系统盘WINDOWS目录下的setuperr.log文件是否有报错信息,如果没有的话,恭喜你,你已经有了一张完美的集成SP2的VLK版XP安装光盘了![/color][/indent][/quote] [quote]
[indent][size=4][color=red]第六章:个性化安装[/color][/size]
[color=royalblue]本章的内容都是为了对安装过程和安装后进行一些个性化设置。
[color=red]1、美化安装背景画面[/color]
其实这个就是对WINNTBBA.DLL和WINNTBBU.DLL两个文件进行改造。
1) 修改WINNTBBA.DLL和WINNTBBB.DLL
A 从安装盘中I386目录提取WINNTBBA.DLL和WINNTBBU.DLL到硬盘。
B 用编辑DLL文件资源的工具软件如:RESOURCE HACKER或者Exescope等工具打开WINNTBBA.DLL和WINNTBBU.DLL文件在这里你可以看到这里分别是安装时的图片,图标,文字,版权信息等。
C 找到---位图---103,把里面的图片导出,然后用图像处理软件对其进行编辑、处理。或者直接用其他的图片替换此图片,但必须保证其格式相同。
D 保存文件,然后将WINNTBBU.DLL放回安装目录。OK!
[color=red]2、oem信息[/color]
oem的设置我就以联想的安装盘为例来讲解。要设置系统属性里的oem信息是很简单的,只要在“$OEM$\$$\SYSTEM32”文件夹里放置OEMLOGO.BMP和OEMINFO.INI文件即可。 OEMLOGO.BMP是一张170X120左右的BMP文件,太大的话会超出显示范围而显示不完全,太小的话也不是很好看。OEMINFO.INI的内容有固定格式,如下面所示,你所要做的,就是修改其中的文字。如果需要增加内容,只要多加几行“LineN=”就可以了。 [quote]
[/color][indent][color=royalblue][Version]
Microsoft Windows Whistler Edition
WinVer=5.01
[General]
Manufacturer=联想(北京)有限公司
Model=联想系列电脑
[Support Information]
Line1="为保护您的每一分投资,联想(北京)有限公司"
Line2="向您提供一系列的服务与支持,当您遇到硬件故"[/color][/indent][color=#4169e1][/quote][/color]
[color=royalblue][color=red]3、高级oem信息[/color]
如果想做的高级些,比如在开始菜单中的支持中心和IE导航栏等。看下面这段: [/color][indent][color=royalblue][quote]
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}]
@="欢迎使用联想电脑"
"InfoTip"="联想电脑支持信息"
[HKEY_CLASSES_ROOT\CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\DefaultIcon]
@="OemLinkIcon.ico" (图标文件)
[HKEY_CLASSES_ROOT\CLSID\{2559a1f6-21d7-11d4-bdaf-00c04f60b9f0}\Instance\InitPropertyBag]
"Command"="联想电脑支持信息"
"Param1"="sysdm.cpl" (打开的程序,这里的sysdm.cpl表示打开的是系统属性)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StartMenu\StartPanel\ShowOEMLink]
"NoOEMLinkInstalled"=dword:00000000(告诉系统,打开OEM信息,否则所有的信息都无法显示的)[/quote]
[/color][/indent]
[color=royalblue]上面这段是一段注册表信息,它的作用就是在开始菜单的运行下面增加一条“联想电脑支持信息”的菜单,你只需要修改其中红色地方就可以了。另外你还需要制作一个名字叫OemLinkIcon.ico的图标文件放置到光盘“$OEM$\$$\SYSTEM32”目录下,其实这个目录的作用就是把此目录下的所有文件拷贝到系统的“WINDOWS\SYSTEM32”目录下。这个图标会在“联想电脑支持信息”菜单前面显示出来。 [quote]
[/color][indent][color=royalblue][HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\{6096E38F-5AC1-4391-8EC4-75DFA92FB32F}]
"CLSID"="{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}"
"Default Visible"="Yes"
"ButtonText"="联想"
"Exec"="http://www.lenovo.com"
"HotIcon"="%windir%\\system32\\oemlinkicon.ico"
"Icon"="%windir%\\system32\\oemlinkicon.ico"[/color][color=#4169e1][/quote]
[/color]
[/indent][/indent]
[/quote]
[[i] 本帖最后由 charleyx76 于 2008-2-28 04:52 编辑 [/i]] 刚从某知名论坛看到的,补充大家参考!
很多新手常常说,看了n多教程却没有一个好的思路,其实这个东西只要你按班就部的学,顺序渐进的想,在把过程的一些逻辑关系搞清楚,觉对可以学懂。
封装系统技术经历了几年的折磨才有至今的如此完善,之前已经有不少前辈写过类似的教程,今天我(莫回首)在次写系统封装教程,教程以手动封装系统附加s&r&s98.0102电源判断工具教程.
安装好微软的xp vol c盘格式按个人喜欢。
使用优化工具对系统进行适当的优化
安装常用软件,例如winrar , office ,qq,等软件。对系统增加第三方功能,等等,增强系统。
下面是对系统进行精简,减肥,如果你不在忽大小,则可以忽略过去。
1、关闭系统还原打开控制面板,双击“系统”。在系统属性面板里选择“系统还原”,选中“在所有驱动器上关闭系统还原”,然后点“确定”。WindowsXP的系统还原功能占用了很大的磁盘空间,所以必须关闭以减少系统体积。关闭系统还原后,系统分区根目录下的System Volume Information目录里的内容就会立即被清空,因此你也可以在关闭系统还原后再打开此功能。2、关闭系统休眠打开控制面板,双击“电源选项”,选择“休眠”,把“启用休眠”前的勾去掉,然后点“确定”。这时在系统分区C盘根目录下的页面文件hiberfil.sys就会自动删除。WindowsXP的休眠功能和系统还原一样,都占用了很大的磁盘空间,休眠功能占用系统分区的大小和物理内存的空间相当。
3、转移虚拟内存页面文件打开控制面板,双击“系统”,在系统属性面板里选择“高级”,然后点击性能框里的“设置”,选择“高级”,点击虚拟内存框里的“更改”,选中当前系统分区C,再选“自定义大小”,将初始大小和最大值设为“0”,然后选择需存放页面文件的分区(如D:等),然后点击“设置”,“确定”。虚拟内存页面文件Pagefile.sys一般位于系统分区的根目录下,其默认设置大小是物理内存的1.5倍,是个难以删除的顽固隐藏文件,因此最好将它转移到系统分区以外的其它分区去,以此减小系统分区的体积。如使用v11.0以上版本的Ghost进行克隆系统的话,这一项其实可以不做,因为使用v11.0以上版本的Ghost在制作镜像文件时能够自动删除虚拟内存页面文件pagefile.sys。
4、清理磁盘,删除系统和IE临时文件※运行磁盘清理程序删除系统临时文件开始—程序—附件—系统工具—磁盘清理—选择驱动器—确定—磁盘清理—选择删除文件—确定。※删除IE临时文件和历史记录打开IE—工具—internet选项—常规—删除Cookies(I)—确定—删除文件(F)—确定—删除历史记(H)—确定—确定。※删除最近使用的文档记录开始—设置—任务栏和[开始]菜单(T)—[开始]菜单—[开始]菜单(S)—自定义(C)—高级—清除列表(C)—确定。
5、(dll文件)清除DllCache目录文件后可减少磁盘占用空间约300M左右,这个直接删了,备份没意义了,有软件可以直接在注册组件时恢复。
一、控制Documents and Settings文件夹在24M左右
1、C:\\Documents and Settings\\Administrator\\Application Data\\ACD Systems下的文件夹和文件均可删除。
2、All Users帐户文件夹控制在9M左右:
C:\\Documents and Settings\\All Users\\Application Data\\Storm\\Update文件夹下的所有文件删除,这是暴风影音安装时所产生的临时文件。
二、控制C:\\Program Files文件夹在350M左右,视安装软件大小多少而定。
1、C:\\Program Files\\Microsoft Office文件夹控制在80M左右,建议使用嬴政天下的OFFICE2003五合一简体中文企业版安装,选择自定义安装。
+ Office 2003的安装特别说明一下具体的精简列表:
Office 2003安装版本推荐嬴政天下的OFFICE2003五合一简体中文企业版,因为本身已精简一部分,而且稳定性不错。
开始安装,首先不要选择“典型安装”,选择“自定义安装”,接着下一步
一共有5个组件,去掉Outlook和Access两个组件,并选择下面的“选择应用程序的高级自定义”。
接着下一步,安装项目里找到“Office 工具”,不安装以下项目:
X 文档更性工具
X 语言设置工具
X Microsoft Office 活页夹支持
X Microsoft Office Document Imaging
X Microsoft Query
X 用户设置保存向导
X 智能标记插件
安装项目里找到“Office 共享功能”,不安装以下项目:
X 转换器和过滤器
X 快捷方式-新建和打开 Office文档
X 校对工具
X 主题
X Visual Basic for Applications
以上就是精简项目,最后选择安装完成即可。总共占据容量大概148M左右,实际C:\\Program Files下的Microsoft Office文件夹大约占80M左右的容量。
这里还牵扯到一个Office 2003卸载的问题,我发现在安装完后可以卸载,但在封装以后就提示找不到临时文件夹下的xc_PRO11.msi文件,因为临时文件被清空了,看来关键还在它。所以在封装以前拷贝一个xc_PRO11.msi(从安装程序解压提取)到C:\\WINDOWS\\Installer下,然后右键单击xc_PRO11.msi选择安装或修复,至到出现安装、修复、卸载的界面,然后取消即可,现在封装就没有问题了,封装后也可以卸载,但这个文件不能删除。
2、C:\\Program Files\\MSN Gaming Zone文件夹可以整体删除,为微软牌类网上游戏,但保留蜘蛛纸牌等本地游戏。
3、C:\\Program Files\\Movie Maker文件夹可选择性删除。
三、控制C:\\WINDOWS文件夹在1.20G左右,其中包含封装时会减肥的DLLCACHE文件,大约400M左右。
1、如果存在C:\\windows\\assembly文件夹,可以整体删除。
2、C:\\windows\\Driver Cache\\i386下的ntkrnlmp.exe、ntkrnlpa.exe、ntkrpamp.exe、ntoskrnl.exe四个文件均可删除。
3、C:\\windows\\Help下保留netcfg.gid、netcfg.hlp、winwb86.cnt、winwb86.hlp四个文件删除,保留Tours文件夹,但将其每个文件夹下的文件删除。
4、C:\\windows\\ime\\chtime\\Applets下的所有文件删除。
5、C:\\windows\\ime\\imjp8_1文件夹下的文件全部删除,保留其下的三个文件夹,但将三个文件夹下的文件都删除,其实就是删除日文输入法。
6、C:\\windows\\ime\\imkr6_1文件夹下的文件全部删除,保留其下的三个文件夹,但将三个文件夹下的文件都删除,其实就是删除韩文输入法。
7、C:\\windows\\inf文件夹下的所有.PNF文件均可删除,但发现重启后又会生成,建议在封装后删除。
8、C:\\windows\\Installer文件夹下除了一个或两个一长串文件夹保留外,其余文件可以删除。
9、C:\\windows\\java子文件夹下的文件均可删除。
10、C:\\windows\\pchealth\\helpctr\\batch下的所有文件删除;
C:\\windows\\pchealth\\helpctr\\binaries下的hscsp_w3.cab和pchdt_w3.cab两个压缩包删除;
C:\\windows\\pchealth\\helpctr\\Database文件夹下的所有文件删除
C:\\windows\\pchealth\\helpctr\\Indices文件夹下的所有文件删除
C:\\windows\\pchealth\\helpctr\\PackageStore文件夹下的CAB压缩包文件均可删除
C:\\windows\\pchealth\\helpctr\\System文件夹下的所有文件和文件夹均可删除
C:\\windows\\pchealth\\helpctr\\Vendors文件夹下的所有文件均可删除。
11、C:\\windows\\Prefetch文件夹下的所有文件均可删除。
12、C:\\windows\\repair文件夹下的所有文件均可删除。
13、C:\\windows\\SoftwareDistribution\\Download文件夹下的所有文件夹删除。
14、C:\\windows\\srchasst文件夹下的msgr3en.dll、nls302en.lex文件删除;
C:\\windows\\srchasst\\chars文件夹下的所有文件删除。
15、C:\\windows\\Temp的所有文件删除。
16、C:\\WINDOWS\\system32\\CatRoot2下的tmp.ed0文件删除。
17、C:\\WINDOWS\\system32\\oobe下,保留oobeinfo.ini文件,并打开将其内容清空后保存,其他文件和文件夹均可删除。
18、C:\\WINDOWS\\system32\\spool\\drivers\\w32x86\\3下的所有文件。
1、卸载硬件驱动
(1)卸载网络适配器。(2)卸载通用串行总线控制器。(3)卸载声音、视频游戏控制器。(4)卸载监视器。(5)卸载显示卡( 卸载显卡是为了防止Ghost到别的机上时出现蓝屏现象)。卸载硬件驱动时如系统提示要重新启动,则选择“否”不启动。注:我们先卸载和更改里面的驱动:注意是有顺序的!!先卸载网络适配器,和通用串行总线控制器,和声音,视频游戏控制器,监视器,显示卡(出现按显卡卸载后,还在是很正常的,不是你操作问题),卸载时按右键,点卸载就行了。系统提示你要重新启动,都按否,不启动!!(卸载显卡是为了防止GHOST到别的机上可能会出现的蓝屏现象)一般情况下是卸载到没有可卸载删除的硬件。2、(关键)更改计算机电源管理模式 Advanced Configuration Power Interface(ACPI) 为 Standard PC打开设备管理器,右键点击“计算机”下的“Advanced Configuration Power Interface(ACPI)”,选择“更改驱动程序”,在弹出的“硬件更新向导”对话框中选择“从列表或指定位置安装(高级)”,点击下一步,再选择“不要搜索,我要自己选择要安装的驱动程序”,再点击下一步,选中“Standard PC”,再点击下一步,硬件管理器会自动安装Standard PC的驱动,之后电脑会提示重新启动,则选择“否”不启动,完成OK。更改说明:若新机与母机不是同类型的ACPI,则你新克隆的机器就无法实现电脑的软关机或出现系统崩溃,因此必须更改为兼容的Standard PC模式。一般比较老的电脑只有Standard PC选项,而现在大多数的电脑都是Advanced Configuration Power Interface(ACPI),2003年后新出的电脑则为 acpi uniprocessor pc。3、(关键)更改IDE ATA/ATAPI控制器为“标准双通道 PCI IDE 控制器”打开设备管理器,右键点击“IDE ATA/ATAPI控制器”下的,例如“Intel(r)82801BA Bus Master IDE Controller”(注:不同的主板其显示会不同),选择“更改驱动程序”,在弹出的“硬件更新向导”对话框中选择“从列表或指定位置安装(高级)”,点击下一步,再选择“不要搜索,我要自己选择要安装的驱动程序”,再点击下一步,选中“标准双通道 PCI IDE 控制器”,再点击下一步,硬件管理器会自动安装标准双通道 PCI IDE 控制器的驱动,之后电脑会提示你重新启动,则选择“否”不启动,完成OK。更改说明:这一步为主要关键步骤,若不做,则Ghost到别的机器上时就会造成系统无法启动的问题,因此为了适应各种不同的主板,必须将 IDE 控制器改成“标准的双通道 PCI IDE控制器”。(其实,更改ide现在我觉得已经没意义了!必竟磁盘控制器驱动已经那么完善了!可以把他当普通驱动卸载掉了!不相信的朋友试试!当然这个做法只能在你导入大量的磁盘控制器驱动时才执行!据体做法下面我将做详细说明,不理解“磁盘控制器驱动”的请阅读我所写的《“srs驱动”初级解说》)
二、部署与封装。
为了方便管理员把系统部署到组织中多台计算机,微软提供了,部署工具deploy.cab,这个工具包位于xp原版系统的,support\\tools目录下,解开此包后可得到数个文件,而我们只需要其中的Sysprep.exe,setupcl.exe,factory.exe,setupmgr.exe,然后在c盘根目录下建立一个Sysprep文件夹,把上述的文件复制到'sysprep'文件夹里。
setupmgr.exe这个用于创建自动应答语'sysprep.inf',其中包括可修改的区域,组织,分辨率等,是为了让部署恢复时更加自动,当然不管你用什么方法完成'sysprep.inf',然后把他放在C:\\sysprep目录下,那么在部署的时候,系统会根据'sysprep.inf'的内容完成原来需要手动来操作的步骤!
接下来是我们以后玩封装系统都要接触的,'sysprep.exe'当我们运行他,会看到一个简单的界面里,有着3种模式:'工厂'审核'重新封装',其中审核模式是在工厂模式下测试安装时使用的。这不是我们常使用的。而'重新封装'才是我们用户最常用的。在看看几个可选可不选的,
第二项“使用最小化安装”也就是常说的mini,无残留驱动安装项正是我们需要的,因此必须要选上。第一项“不重置激活的宽限期”,而我们所用的是免激活版,因此这项选与不选无所谓(不过还是建议勾选上)。
第三项“不重新产生安全标识符”
安全标示符(SID)是每台计算机独一无二的标示,那么系统会在部署的时候生成一个SID,如果选中了此项则与源计算机的一样,计算机的域很重要,如果要让计算机加入域就不要选中此项,当然这个过程也要暂用一定的时间。
第四项“检测非即插即用硬件”
这个如果选中了,那么在部署的时候会检测非即插即用硬件,也就是说系统默认的是检测即插即用硬件,当然这也要暂用一定时间
。*关机模式可以根据需要选择
建议选择“退出”其他的不用我多说了吧。
然后我们选择“重新封装”…好了,自动退出sysprep.exe。然后在设置你所需要的操作,然后重起计算机,用ghost磁盘映像备份!也就是我们常用的ghost 11.0,兴奋吧,简单的封装系统就这样完成了。
以下请务必认真阅读,有的人曾在此成为学过一段时间封装系统的人。
封装系统的进阶,也就是突破hal限制,Srs限制,调式驱动的完成以及部署注册组件运行的程序和首次桌面运行的程序。
1.突破HAL限制(本步骤必须在执行sysprep.exe封装后才操作的,否则会蓝屏等问题。)
HAL限制,被微软所限制,而突破方法也是来自微软的方法,正所谓,羊毛出自羊身上,此方法有一定的权威性和稳定性。被部署的目标计算机的硬件抽象层(hal)必需与源计算机的相同,否则计算机会不稳定或者蓝屏死机等问题。
首先我们在任意xp版本系统中的sp3.cab提取以下文件(这个文件好像位于i386里,如果是xp sp2则是sp2.cab)“halacpi.dll,halapic.dll,halmps.dll,halaacpi.dll,halmacpi.dll,hal.dll,ntkrnlmp.exe,ntkrnlpa.exe,ntkrpamp.exe,ntoskrnl.exe,”提取完后将”hal.dll更改为halstnd.dll“将ntoskrnl.exe更改为ntkrnlup.exe\"然后将这些文件拷贝到windows\\system32 并覆盖已存在的!并将dtecthal.inf复制到windows\\inf下,(dtecthal.inf这个文件可以在别人封装好的ghost里提取)。接下来先复制一份c:\\NTLDR存到其他盘下,呆会我们会用到他,要去掉系统隐藏属性才可见。(切记:在以下所有操作做完后,在复制覆盖回原C盘下原有的ntldr)去掉c盘下的boot.ini的只读属性,并将其打开,添加/detechal
[Operating Systems]
multi(0)disk(0)rdisk(0)partition(1)\\WINDOWS=\"Microsoft Windows XP Professional\" /noexecute=optin /fastdetect /detechal
然后保存修改回属性。
打开注册表,删除以下键值,需要添加权限,对Acpi_HAL右键-权限-Everyone的权限 “完全控制”勾上-确定退出。这样就可以删除了
HKEY_LOCHL_MACHINE\\SYSTEM\\Controlset001\\Enum\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Controlset001\\Enum\\Root\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Controlset002\\Enum\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Controlset002\\Enum\\Root\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Controlset003\\Enum\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Controlset003\\Enum\\Root\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Currentcontrolset\\Enum\\Acpi_HAL
HKEY_LOCHL_MACHINE\\SYSTEM\\Currentcontrolset\\Enum\\Root\\Acpi_HAL
完成上述步骤,就能解决,目标计算机必须与源计算机的hal相同。
1.1设置Longhorn的ntldr 电源判断文件。
去掉系统隐藏属性,将c:\ 下原来的ntldr 文件改名成为ntldr_XP,然后将我们准备好的ntldr文件复制要c:\ 下保留。如果没有这个文件请到别人的.gho提取。这个步骤必须做。不做这个步骤想折磨自己的就试试吧。
2.突破Srs驱动限制。(微软方法,本步骤必须在执行SYSPREP.EXE前操作)
1>收集需要的srs驱动,方便期间,直接下载DPS提供的massstorage 驱动:
[url]http://www.driverpacks.net/DriverPacks/download.php?pag=m[/url]
2>解压驱动到c:\\drivers 。
3>编辑sysprep.ini 加入以下内容
InstallFilesPath=C:\\sysprep\\i386
然后在[SysprepMassStorage]段中添加需要的串口磁盘驱动,根据DPS驱动包的说明书,一般只集成Intel、nVIDIA、Uli、VIA、SiS、AMD的串口磁盘驱动即可,在对应的驱动包中的inf文件中,可以获得硬件的即插即用ID。
例如:
[SysprepMassStorage]
PCI\\VEN_1022&DEV_7469=c:\\drivers\\m\\am\\AMDEIDE.inf
PCI\\VEN_1002&DEV_4349=c:\\drivers\\m\\at\\atiide.inf
PCI\\VEN_10B9&DEV_5215=c:\\drivers\\m\\au\\1\\ALIIDE.INF
PCI\\VEN_10B9&DEV_5219=c:\\drivers\\m\\au\\1\\ALIIDE.INF
PCI\\VEN_10B9&DEV_5229=c:\\drivers\\m\\au\\1\\ALIIDE.INF
PCI\\VEN_10B9&DEV_5228=c:\\drivers\\m\\au\\2\\m5228.INF
PCI\\VEN_10B9&DEV_5281=c:\\drivers\\m\\au\\2\\m5281.inf
PCI\\VEN_10B9&DEV_5287=c:\\drivers\\m\\au\\3\\ulisata.inf
PCI\\VEN_10B9&DEV_5288=c:\\drivers\\m\\au\\4\\ULISATA.INF
PCI\\VEN_10B9&DEV_5289=c:\\drivers\\m\\au\\5\\ULISATA.INF
PCI\\VEN_8086&DEV_2652&CC_0104=c:\\drivers\\m\\in\\1\\iastor.inf
PCI\\VEN_8086&DEV_27C3&CC_0104=c:\\drivers\\m\\in\\1\\iastor.inf
PCI\\VEN_8086&DEV_2682&CC_0104=c:\\drivers\\m\\in\\1\\iastor.inf
PCI\\VEN_8086&DEV_27C6&CC_0104=c:\\drivers\\m\\in\\1\\iastor.inf
PCI\\VEN_8086&DEV_2822&CC_0104=c:\\drivers\\m\\in\\1\\iastor.inf
PCI\\VEN_8086&DEV_2652&CC_0106=c:\\drivers\\m\\in\\1\\iaahci.inf
PCI\\VEN_8086&DEV_2653&CC_0106=c:\\drivers\\m\\in\\1\\iaahci.inf
PCI\\VEN_8086&DEV_27C1&CC_0106=c:\\drivers\\m\\in\\1\\iaahci.inf
PCI\\VEN_8086&DEV_27C5&CC_0106=c:\\drivers\\m\\in\\1\\iaahci.inf
PCI\\VEN_8086&DEV_2681&CC_0106=c:\\drivers\\m\\in\\1\\iaahci.inf
PCI\\VEN_8086&DEV_2821&CC_0106=c:\\drivers\\m\\in\\1\\iaahci.inf
PCI\\VEN_8086&DEV_24DF&CC_0104=c:\\drivers\\m\\in\\1\\O\\iastor.inf
PCI\\VEN_8086&DEV_25B0&CC_0104=c:\\drivers\\m\\in\\1\\O\\iastor.inf
PCI\\VEN_10DE&DEV_008E=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_00D5=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_00EE=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_00E3=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_0036=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_003E=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_0054=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_0055=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_0266=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_0267=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_036F=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_037E=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_037F=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_03F6=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_03F7=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_10DE&DEV_03E7=c:\\drivers\\m\\N\\TM\\nvatabus.inf
PCI\\VEN_1039&DEV_0181=c:\\drivers\\M\\SI\\1\\SISRaid1.INF
PCI\\VEN_1039&DEV_0180=c:\\drivers\\M\\SI\\2\\SISRaid.INF
PCI\\VEN_1039&DEV_0182=c:\\drivers\\M\\SI\\3\\SISRaid2.INF
PCI\\VEN_1106&DEV_3349&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_6287&CC_0106=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_0591&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_3249&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_3149&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_3164&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_0581&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_7372&CC_0104=c:\\drivers\\M\\V\\1\\VIAMRAID.INF
PCI\\VEN_1106&DEV_4149=c:\\drivers\\M\\V\\2\\viapide.inf
PCI\\VEN_1106&DEV_3149&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_0591&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_5337&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_3349&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_5287&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_3164&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_0581&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_1106&DEV_5324&CC_0101=c:\\drivers\\M\\V\\3\\vminiide.inf
PCI\\VEN_104B&DEV_1040=c:\\drivers\\M\\VM\\vmscsi.inf
…………
4>在c:\\sysprep 目录下建立 i386\\$oem$目录 ,在c:\\sysprep\\i386\\$oem$ 中建立cmdlines.txt 文件,在文件中加入
[Commands]
\"c:\\sysprep\\sysprep -clean\"
这样就会在最小化安装的过程中禁用所有因为在目标计算机上不存在而未安装的大量存储控制器。
至此,一个突破了S&R&S限制的系统映像准备完毕。
执行sysprep进行封装,在封装的过程中,系统会自动复制.sys驱动到drivers下。在最小化安装的时候会禁止多余的驱动。
以上步骤有省略。
(注意:我推荐你用别人收集好的磁盘控制器驱动,减少不必要的错误和麻烦,这里我推荐自由天空的作品现在最新的是2.7,采用别人整理好的磁盘控制器驱动的话,以上突破SRS驱动步骤全部省略掉了,记住导入别人的磁盘控制器驱动必须在执行sysprep.exe 后才导入。)
3.为了让驱动能在首次进去桌面能装好只要按照如下做法即刻(这个步骤不管在执行封装前后都可以操作的,也就是说不限制逻辑。)
在开始\\运行窗口输入“gpedit.msc\"打开组策略:
找到“计算机配置——管理模板——系统”
启用“关闭 Windows Update 设备驱动程序搜索”
找到“计算机配置——管理模板——系统——Internet 通信管理——Internet 通信设置”
启用“关闭 Windows Update 设备驱动程序搜索”
找到“用户配置——管理模板——系统”
启用“配置驱动程序搜索位置” 钩上:不搜索软盘、Windows Update(光驱不要选)
忽略“设备驱动程序的代码签名”
启用“关闭 Windows Update 设备驱动程序搜索”
右健点桌面“我的电脑”打开“系统属性——硬件”
找到“驱动程序签名”选择“忽略,安装软件不用征求我的同意” 并钩上“将这个作为系统的默认值”——确定。
找到“Windows Update”选择“从不在update搜索驱动”——确定。
还有要注意的是:sysprep.inf 里的
[Unattended]
DriverSigningPolicy=Ignore
NonDriverSigningPolicy=Ignore
OemSkipEula=Yes
OemPreinstall=Yes
UpdateInstalledDrivers=Yes
请务必添加进去这段,不然上面操作的只是白白操作。至于为什么我就不加说明了。
4.注册组件调试,
HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunOnce
其实只要在这里添加运行程序就可以了。
例如我的DLL.exe 是放在c:\\sysprep 则
添加多个程序的话,在部署恢复时系统会按顺序运行程序。在\\RunOnce的右边新建‘字符串值’然后在
数值数据(v):
c:\\sysprep\\DLL.exe ;那么程序在部署时就会运行dll.exe并且在下次电脑重起后自动删除这个键值
注意:以上步骤必须在执行sysprep.exe封装以后才操作,否则在执行sysprep.exe 注册表就被加载了。
5.首次进去桌面运行程序。
C:\Documents and Settings\All Users\「开始」菜单\程序\启动 只要在这里放第一次要运行的程序就行了。我给大家一段AU3代码: 我把代码简单化了这样看得容易懂。
RunWait("c:\windows\yxrun\分辨率智能设置.exe")
RunWait("c:\windows\yxrun\清除任何显卡生成的桌面右键多余菜单.cmd","c:\windows\yxrun\",@SW_HIDE)
RunWait("c:\windows\yxrun\自动关闭空闲的IDE通道.bat","c:\windows\yxrun\",@SW_HIDE)
RunWait("regedit /s c:\windows\yxrun\后期优化处理.reg")
大家可以自行添加
DirRemove("c:\windows\yxrun",1) ;删除程序目录否则别人会说你的系统有残留LJ。
Run(@ComSpec&' /c ping 127.0.0.1 -n 3&del /q "'&@ScriptFullPath&'"',@ScriptDir,@SW_HIDE) ;这段是删除自我的代码大家不必了解其原理。 为什么要删除自我,否则下次启动电脑还是会运行这个程序。然后编译一下就行了
6. 准备接管部署过程的文件
如何调试驱动包了,看下面,下面需要涉及到一个 编程工具 autoit 或者其他的编程工具
既然我们知道系统部署过程是由 Windows\\System32\\Setup.exe 触发的,那么系统是怎么知道在第一次启动时运行 Windows\\System32\\Setup.exe 的呢?经过无数前辈们的探索,发现了 CMDLine 这个键值。HKEY_LOCAL_MACHINE\\SYSTEM\\Setup\\CMDLine 键,在 封装后此键值为“ Setup.exe–newsetup -mini”,这也就是说在系统第一次启动时运行 Setup.exe 并加载“–newsetup –mini”参数。(如果封装时没有选最小化部署这里不会有“mini”
参数)我们可以据此断定,之所以目标计算机第一次运行时会运行 Setup.exe 来部署系统,是由这个键值控制的。那么,如果我们把这个键值更改一下,让目标计算机第一次启动时运行我们所需的程序,不就能够控制部署过程了吗?因此我们用AU3脚本写一个代替“CMDLine” 这个键值“setup.exe”
我的是mohuishou.exe(可以随便命名),AU3代码如下:
FileSetAttrib("C:\NTLDR","-RSH");去掉属性 这个是我们准备好的电源判断文件,否则回出现文件损坏现象
FileDelete("C:\NTLDR ");删除准备的电源判断文件,
FileSetAttrib("C:\NTLDR_XP","-RSH");去掉属性
FileMove("C:\NTLDR_XP","c:\ntldr") ;将原来的电源判断文件更名,这个是系统原来有的,在封装前必须改这个名字NTLDR_XP
FileSetAttrib("C:\NTLDR ","+RSH");加属性
;大家回想上述步骤1.1 就知道为什么要那样操作了。以上代码步骤就是为了删除电源判断文件,将我们改名后的NTLDR_XP,改回原来的名字。
FileSetAttrib("c:\boot.ini","-RSH")
IniWrite("c:\boot.ini","operating systems","multi(0)disk(0)rdisk(0)partition(1)\WINDOWS",'"Microsoft Windows XP Professional" /noexecute=optin /fastdetect');为了去掉 /detecthal
FileSetAttrib("c:\boot.ini","+RSH")
RegDelete("HKEY_LOCAL_MACHINE\SYSTEM\setup","cmdline") ;没有这个也行,有这个比较保险
RegDelete("HKEY_LOCAL_MACHINE\SYSTEM\setup","cmdline")
RunWait("c:\sysprep\drivers\drvs2.0.exe") ;这是调用skyfree的驱动选择工具,根据自己修改
RunWait("setup.exe -newsetup -mini",@SW_HIDE) ;这里和原来的原理是一样的。
然后将这个文件编译成.exe然后放到windows\system32 下 然后将
HKEY_LOCAL_MACHINE\\SYSTEM\\Setup\\CMDLine 键,键值“ Setup.exe–newsetup -mini”
修改为“mohuishou.exe” 那么这样在部署的时候就会运行mohuishou.exe。
好了到这里为止你们是否学会了呢? 逻辑关系是否搞清楚了?
现在我还解析下龙帝国的 s&r&s9.80102 这个电源判断工具,这个工具代替了我们要突破hal限制所要操作的步骤,还有就是准备接管部署过程的文件,也就是说我们要重新编写一个程序来接口驱动程序,而s&r&s9.80102 是采用ini 文件的形式来配制接管部署过程的,你们准备一个 s&r&s9.80102 并将他安装了,C:\\Sysprep 找到 msprep.ini在找到
============================================================================================
Ext=1;这里我们把他设置成1
Extimeout=10
;定义外部接口(启用:=1),从[Extend]中进行具体的设置.等号左边是文本标题,注意等号右边的值不要包
;含盘符,例1:恢复DLL Cache=Windows\\dllcachemanager.exe /Restore /autodelete,0(这里的,0表示不
;等待Dllcachemanager执行完毕,这样的效果是可以使Dllcache恢复和Mini Setup同步进行,减少恢复时间)
;例2:设置boot菜单选择时间=Windows\\Stime.exe,1,1(最后面的,1表示程序在Mini Setup结束之后运行)
在向下移动看到
[Extend]
解压驱动集成包=
这里就是接口我们的驱动程序,例如:解压驱动集成包=sysprep\\driver\\drvs2.0.exe
这样就完成了驱动的接口了,如果决得全手动的很麻烦的,可以采用s&r&s9.80102 这个电源判断工具,这个是个不错的封装工具。其他的操作就和全手动封装的步骤差不多了!
页:
[1]