admin管理员组

文章数量:1530269

一、准备工作:

    原材料:Windows XP SP2原版镜像(sc_win_xp_pro_with_sp2_vl.ISO,VRMPVOL_CN,592MB,MD5:f455f9a787b620aca7ac89ab47574919)

    制作工具:EasyBoot、UltraEdit、UltraISO、XPlode、VMware

   二、制作母盘:

   1、创建目录D:\xpcd\SIMPCHIN\SATAXP,然后把sc_win_xp_pro_with_sp2_vl.ISO里面的所有文件及文件夹,提取到此目录下。

   2、加入主题补丁UXTHEME.DL_和线程补丁TCPIP.SY_:
从网上下载已破解的UXTHEME.DLL及TCPIP.SYS,然后用SetCSum.exe来加上文件头校验,并用Makecab.exe来压缩,命令如下:

    代码:


SetCSum /a UXTHEME.DLL
SetCSum /a TCPIP.SYS
Makecab UXTHEME.DLL
Makecab TCPIP.SYS

   最后把生成的UXTHEME.DL_及TCPIP.SY_替换到SATAXP\I386目录下。

   3、创建自动应答文件WINNT.SIF和UNATTEND.TXT:
从SATAXP\SUPPORT\TOOLS\ DEPLOY.CAB中提取setupmgr.exe,执行后按提示填入相应的安装信息,即可生成WINNT.SIF,复制多一份并改名为UNATTEND.TXT,然后用记事本打开WINNT.SIF,在[Unattended]段末尾加上一行:

    代码:


FileSystem=*

   这一行的作用是使得“刻盘安装方式”出现XP自带的格式化选项。
   最后把WINNT.SIF和UNATTEND.TXT复制到SATAXP\I386目录下。

   4、修改DOSNET.INF,加入Svcpack补丁安装接口,用于“硬盘安装方式”:
用记事本打开SATAXP\I386\DOSNET.INF,按下Ctrl+F,查找[OptionalSrcDirs],在此段末尾加入Svcpack,如下:

    代码:



[OptionalSrcDirs]
lang
svcpack

   5、加入“硬盘安装方式”安装接口Win.bat:

   用Smartdrv.exe复制到SATAXP\I386目录下,然后在SATAXP目录下新建一个批处理文件,名为Win.bat,内容如下:

    代码:


@echo off
i386\smartdrv >nul
i386\winnt /u:i386\UNATTEND.TXT /s:i386

    三、集成补丁:

   1、收集补丁:全新安装一个XP,安装完后立刻上网更新,并记录下所有补丁的名字。然后就到Microsoft下载中心去把它们都拉回来,放到D:\HotFix目录下。
http://www.microsoft/downloads/Browse.aspx?DisplayLang=zh-cn

   2、加入XPlode安装接口:删除SATAXP\I386目录下的Svcpack.in_,接着用记事本创建
Svcpack.inf,内容如下:

   代码:


[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

[SetupData]
CatalogSubDir="\i386\svcpack"

[ProductCatalogsToInstall]

然后用Makecab进行压缩:


    代码:



Makecab Svcpack.inf

最后把得到的Svcpack.in_复制到SATAXP\I386目录下。

   3、创建目录D:\xpcd\SIMPCHIN\SATAXP\I386\SVCPACK,接着把XPlode的所有文件复制到该目录下(共6个,文件名如下):

    代码:


XPlode.exe
XPlode.x4d
XPlode.xml
XPlodeExecute.x4e
XPlodeFileOps.x4e
XPlodeRegistry.x4e

   然后把D:\HotFix目录下的所有补丁也复制进来,并将这些补丁的名字改为8.3格式,以便支持DOS下的“硬盘安装方式”。

   4、创建目录D:\xpcd\SIMPCHIN\SATAXP\I386\SVCPACK\UPDATE,然后把一些增强补丁(如WMP10等)拷贝进来。

   5、配置XPlode安装脚本,用于自动安装补丁:用记事本打开XPlode.xml,进行相应的修改即可。这里举例说一下:

    代码:



<XPlode4>
<config>
<environment>
<display.title>.</display.title>
<displayplete>completed</displayplete>
<execute.string>Executing: #1#</execute.string>
<fileio.copy>Copying files</fileio.copy>
<registry.write>Writing to registry</registry.write>
</environment>
<display plugin=&#39;#XPLODE#\XPlode.x4d&#39;>
<show total=&#39;6&#39; after=&#39;4&#39; subcount=&#39;true&#39; />
<font face=&#39;Tahoma&#39; antialias=&#39;true&#39; small=&#39;7&#39; large=&#39;0&#39; />
<window width=&#39;350&#39; height=&#39;150&#39; position=&#39;7&#39; />
<windowmode border=&#39;false&#39; ontop=&#39;true&#39; />
<colours>
<header x=&#39;4&#39; y=&#39;4&#39; fore=&#39;#FFFFFF&#39; />
<footer x=&#39;4&#39; y=&#39;180&#39; width=&#39;410&#39; fore=&#39;#FFFFFF&#39; />
<progress border=&#39;#000000&#39; back=&#39;#FFFFFF&#39; fore=&#39;#00AA00&#39; />
<main x=&#39;16&#39; y=&#39;40&#39; width=&#39;320&#39; fore=&#39;#FFFFFF&#39; current=&#39;#FFFFFF&#39; description=&#39;#FFFFFF&#39; overlay=&#39;#FFFFFF22&#39; />
</colours>
</display>
</config>
<items>
<item display="系统安全更新">
<execute display="正在安装 Windows Installer 3.1 V2 请稍候...">
<program>#XPLODE#\Update\MSI31.exe</program>
<arguments>/q /n /z</arguments>
</execute>
<execute display="正在安装 KB873339 请稍候...">
<program>#XPLODE#\KB873339.exe</program>
<arguments>/q /n /z</arguments>
</execute>
<execute display="正在 优化系统性能 请稍候...">
<program>regedit</program>
<arguments>/s "#XPLODE#\Update\tweak.reg"</arguments>
</execute>
</item>
</items>
</XPlode4>

XPlode.XML这个文件必须是Unicode编码的文本文件;
所有标签都必须为<xxx></xxx>成对
在脚本中#XPlode#代表XPlode所在的目录;
program后的文件改为补丁路径和名称,arguments为补丁安装参数;

    四,集成SATA驱动

   1、使用BTS驱动包来集成SATA驱动,BTS下载网址:
http://www.driverpacks/Projects/DriverPacks/
下载其中的DriverPack BASE和DriverPack MassStorage即可。

   2、这里以BTS_DriverPacks_BASE_V601.exe和DriverPack_MassStorage_V510.7z为例,执行BTS_DriverPacks_BASE_V601.exe,安装到D:\BTS,再把DriverPack_MassStorage_V510.7z复制到D:\BTS\DriverPacks目录下,然后执行D:\BTS\BTS_DPs_Slipstreamer_V601.cmd,选用Method 1,按提示操作即可得到D:\BTS\UWXPCD_ROOT目录。

   3、把D:\BTS\UWXPCD_ROOT目录下的文件及文件夹,复制到SIMPCHIN\SATAXP目录下,然后执行RUN_ME.cmd并按提示操作即可集成SATA驱动。

   4、最后把SIMPCHIN\SATAXP目录下的$OEM$文件夹,复制一份到SATAXP\I386目录下,这是用于“硬盘安装方式”的。

    五、制作N合1光盘:

   1、提取启动软盘组文件:执行以下命令,按提示操作后,会在C盘下生成$WIN_NT$.~BT文件夹。

    代码:



D:\xpcd\SIMPCHIN\SATAXP\I386\WINNT32.EXE /noreboot

   2、把C盘下的$WIN_NT$.~BT文件夹复制到D:\xpcd目录下,并改名为SATA ,然后删除D:\xpcd\SATA目录下的BOOTSECT.DAT、migrate.inf、winnt.sif等3个文件,再把SIMPCHIN\SATAXP\I386目录下的WINNT.SIF,复制到D:\xpcd\SATA目录下。

   3、把D:\xpcd目录下的SATA文件夹复制出两个副本,并分别命名为MSDN和CTRL,把SATAXP\I386目录下的TXTSETUP.OLD和WINNT.OLD复制到D:\下,并分别改名为TXTSETUP.SIF和WINNT.SIF。

   4、把D:\ TXTSETUP.SIF复制到D:\ MSDN和D:\CTRL目录下,把WINNT.SIF复制到D:\ MSDN目录下。然后在D:\CTRL目录下创建WINNT.SIF,内容如下:

    代码:

[Data]
AutoPartition=0
MsDosInitiated="0"
[UserData]
ProductKey=DG8FV-B9TKY-FRT9J-6CRCC-XPQ4G

   5、创建目录D:\xpcd\BOOT, 把cdimage.exe和xpboot.bin(XP引导文件,可以由UltraISO导出)复制到D:\xpcd\BOOT目录下。接着将xpboot.bin复制出3个副本,分别命名为SATA.BIN、MSDN.BIN和CTRL.BIN。

修改D:\xpcd\BOOT\SATA.BIN,将“I386”替换为“SATA”;(使用UltraEdit修改,大写)
修改D:\xpcd\BOOT\ MSDN.BIN,将“I386”替换为“MSDN”;
修改D:\xpcd\BOOT\CTRL.BIN,将“I386”替换为“CTRL”;

修改D:\xpcd\SATA\ SETUPLDR.BIN,将“I386”替换为“SATA”,共4处;
修改D:\xpcd\ MSDN \ SETUPLDR.BIN,将“I386”替换为“MSDN”,共4处;
修改D:\xpcd\ CTRL \ SETUPLDR.BIN,将“I386”替换为“CTRL”,共4处

修改D:\xpcd\SATA\ TXTSETUP.SIF,用记事本打开TXTSETUP.SIF,搜索SetupSourcePath,将所在行替换为SetupSourcePath = "\SIMPCHIN\SATAXP\"
修改D:\xpcd\ MSDN \ TXTSETUP.SIF,用记事本打开TXTSETUP.SIF,搜索SetupSourcePath,将所在行替换为SetupSourcePath = "\SIMPCHIN\SATAXP\"
修改D:\xpcd\ CTRL \ TXTSETUP.SIF,用记事本打开TXTSETUP.SIF,搜索SetupSourcePath,将所在行替换为SetupSourcePath = "\SIMPCHIN\SATAXP\"

   6、把SIMPCHIN\SATAXP目录下的WIN51、WIN51IP、WIN51IP.SP2等3个文件复制到D:\xpcd目录下。此时,目录结构应如下:

    代码:


file://D:\xpcd
├─BOOT
├─CTRL
├─MSDN
├─SATA
└─SIMPCHIN
------└─SATAXP
------------├─$OEM$
------------├─DOCS
------------├─I386
------------│----├─$OEM$
------------├─SUPPORT
------------└─valueADD

   7、用EasyBoot制作“刻盘安装方式”下的引导菜单:

[1] 自动安装WinXP SP2 SATA版;对应命令:run SATA.BIN
[2] 自动安装WinXP SP2 VOL 版;对应命令:run MSDN.BIN
[3] 手动安装WinXP SP2 VOL 版;对应命令:run CTRL.BIN

   8、用cdimage.exe制作光盘镜像,命令如下:

D:\xpcd\BOOT\cdimage.exe -l"XPSP2VOL" -t1/12/2006,20:00:00 -h -n -b"D:\xpcd\BOOT\loader.bin" -x -o -m "D:\xpcd" "D:\XPSP2VOL_V2.5.iso"

让SATA“嫁给”Windows XP

   SATA硬盘有不少优点,但安装操作系统实在麻烦,不仅要抓住机会按“F6”键加载STAT的驱动程序,还要制作带驱动程序的软盘.要命的是如果新机器没有配置软驱,那可就大眼瞪小眼了……来制作一张含SATA驱动程序的WinXP安装光盘吧.你会发现:原来加载SATA硬盘驱动其实很简单.



   为了不再让WinXP的安装过程需要通过软盘加载SATA驱动程序,很多人都梦想主板的SATA驱动程序集成到安装光盘中,下面就来DIY一张集成SATA驱动程序的Windows XP安装光盘!

    Windows XP安装目录及文件准备


    打开资源管理器,在一个拥有足够磁盘空间(空闲空间至少为700MB;如果将生成后的光盘镜像也放在该分区,则应当保证有一张光盘的双倍容量的空间,即1.4GB左右)的硬盘分区上创建一个文件夹,比如“D:\XPSATA”,用于保存Windows XP的全部安装文件.

    把一张完好的Windows XP安装光盘放入光驱,在资源管理器中将光盘中的文件全部选定,再复制到“D:\XPSATA”目录中.

   准备驱动程序文件

    一般随主板附送的驱动程序安装光盘中都有SATA的驱动程序.打开光盘目录,寻找名称中含有“SATA”或“RAID”字符的文件夹;也可在主板制造商的网站或其它驱动程序下载站点(如:驱动之家“ http://www.mydrivers”等)寻找与自己的主板芯片组相匹配的SATA驱动程序.

    在D盘中建立一个新的目录(如“STATDRV”),然后将找到的SATA驱动程序文件全部拷贝到这个目录中(D:\SATADRV).这里我们以Si3112的SATA驱动程序为例进行介绍.其它类型的SATA驱动程序的集成步骤几乎完全相同,所不同的仅仅是驱动程序文件名的不同而已.

    在这个“D:\STATDRV”的文件夹中,一定会有一个扩展名为“.inf”或“.oem”的小文件,如“oemsetup.inf”或者“txtsetup.oem”等(本例中为“txtsetup.oem”),用记事本程序打开它,随后要用!

   编辑“txtsetup.sif”文件

    打开“D:\XPSATA\I386”文件夹,找到一个名为“txtsetup.sif” 的文件,这是Windows XP在安装时加载驱动程序的信息文件,用记事本程序打开它.

    按“Ctrl+F”快捷键,打开查找对话框,以“[SourceDisksFiles]”为关键字进行查找.找到这个字段后,其下面已经存在一些内容.翻页到这个字段的末尾(注意:不是整个文件内容的末尾),添加以下内容:“si3112.sys = 1,,,,,,3_,4,1”.

    这里的“si3112.sys = 1,,,,,,3_,4,1”是描述驱动程序所在位置的代码.代码的格式为“filename_on_source=diskid,subdir,upgradecode,newinstallcode,spare,spare,newfilename”,在“txtsetup.sif”文件中的“[SourceDisksNames]”和“[WinntDirectories]”等字段中有详细的描述.有兴趣的朋友可以深入研究其它目录的对应关系,这里仅简单介绍.

    在实际操作时,绝对不可以照搬代码!特别是扩展名为SYS的文件“si3112.sys”,它是SATA驱动程序目录“D:\STATDRV”中的驱动程序文件名,如果读者的SATA驱动程序与本文所述的不同,则只需换成目录中相应的文件即可.

    切换到前面打开的“txtsetup.oem”文件,以“[HardwareIds.”为关键字进行搜索,应该可以找到类似“[HardwareIds.SICS.Si3112]”的字段.

    该字段下的代码如:“id =PCI\VEN_1095&DEV_3112 &SUBSYS_31121095, Si3112”.

    切换到刚才打开的“txtsetup.sif”文件窗口中,以“[HardwareIdsDatabase]”为关键字进行搜索.找到后,将“txtsetup.oem”文件中“[HardwareIds.SICS.Si3112_XP]”字段下的代码拷贝到“txtsetup.sif”文件的“[HardwareIdsDatabase]”字段末尾.不过,我们需要更改一下代码的格式,如将“id =PCI\VEN_1095&DEV _3112&SUBSYS_31121095, Si3112”改为:“PCI\VEN_1095&DEV_3112&SUBSYS_31121095 = Si3112”(其他代码修改方法相同),更改后的代码如下:

PCI\VEN_1095&DEV_3112&SUBSYS_31121095 = Si3112
PCI\VEN_1095&DEV_3112&SUBSYS_34238086 = Si3112
PCI\VEN_1095&DEV_3112&SUBSYS_311215D9 = Si3112
PCI\VEN_1095&DEV_3112&SUBSYS_B0021458 = Si3112
PCI\VEN_1095&DEV_3112&SUBSYS_01661028 = Si3112
PCI\VEN_1095&DEV_3112&SUBSYS_82141033 = Si3112
PCI\VEN_1095&DEV_3512&SUBSYS_35121095 = Si3112
PCI\VEN_1095&DEV_3512&SUBSYS_01661028 = Si3112

提示:不同SATA驱动程序的代码内容各不相同,应该根据具体情况灵活处理.

    检查拷贝修改的内容是否与原有的内容重复,如果有,则把重复的一行删除.接着在“txtsetup.sif”文件查找“[SCSI.load]”和“[SCSI]”字段,添加如下内容:

[SCSI.load]
si3112 = si3112.sys,4

[SCSI]
si3112 = Silicon Image SiI 3112 SATALink Controller

     至此,我们就把自己的SATA驱动程序的相关信息添加到了Windows XP安装信息文件“txtsetup.sif”中了!

     上述添加自定义SATA信息内容的步骤看似很复杂,其实也就是同时打开Windows XP安装文件目录中的“txtsetup.sif”文件和驱动程序目录中的“.inf”或“.oem”信息文件,然后将后者文件中相关字段下面的内容一一对应地移植到“txtsetup.sif”文件中.知道了方法,做起来就要容易些了!

   修改“winnt.sif”文件内容

    现在,我们已经完成了两个最重要的步骤:一是获取了SATA驱动程序文件,它们现在被保存在“D:\STATDRV”文件夹中;二是修改了Windows XP安装时自动加载驱动程序的信息文件“txtsetup.sif”.但现在有一个新的问题:Windows XP在安装时如何知道它所需要的驱动程序文件在哪个目录下呢?

    这个问题则需要通过修改“winnt.sif” 这个文件来解决.这个文件是Windows XP系统在安装时的附加信息文件,可以在其中指定非微软提供的第三方驱动程序的安装路径.

    对于本例,在“D:\XPSTAT\I386”文件夹中用记事本创建一个文本文件,写好内容后,再将文件名改为“winnt.sif”即可.

    在用记事本保存文件时,一定要输入完整的文件名,并且一定要用半角的双引号将文件名引起来,如“winnt.sif”,否则实际上生成的实际上仍然是个文本文件(Winnt.sif.txt),这将导致安装过程中出错,STAT驱动程序无法自动加载!

    在“winnt.sif”文件中添加以下内容(如果已经存在部分内容,则应进行修改或添加,且保证每行的内容不要重复):

[Unattended]
OemPreinstall=Yes
OemPnPDriversPath=STATDRV


    上述代码最后一句引号中的内容是指随后生成光盘时,驱动程序相对于光盘根目录所在的相对路径.由于我们打算把保存驱动程序的“D:\STATDRV”文件夹放到新生成的安装光盘的根目录,因此不必包含任何子目录路径.

    将SATA驱动压缩到安装文件中

    使用支持CAB文件格式的工具(如WinRAR等),将驱动程序目录中扩展名为SYS的文件添加到WindXP安装目录的CAB文件中.

    这里我们可以使用Windows XP本身附带的一个命令行工具“makecab.exe”,它位于“C:\WINDOWS\System32\”目录下.由于“System32”是默认的搜索路径,因此使用时不需要程序所在的路径.

    在开始菜单中打开“运行”对话框,输入如下命令:“MAKECAB D:\STATDRV\SI3112.SYS D:\XP-STAT\i386\SI3112.SY_"

     具体的驱动程序文件名和保存路径请根据实际情况灵活更改.

    重新生成安装光盘

   经过上述步骤,现在已经是万事俱备,只待刻盘了!

   准备任意一款支持制作可引导型光盘的工具程序,如经典的软件“WinISO”、“ISOCommander”及国产软件“UltraISO”等均可.生成可引导光盘的方法有很多种,为避免大家到处寻找那些生僻的工具软件,这里以UltraISO为例,分若干个步骤进行:

   (1)制作原始安装光盘镜像

    这一步的目的是方便从制作出来的光盘镜像中提取引导文件.其实也有专门的直接提取光盘引导区的工具,但操作稍麻烦,因此在这里多花费一两分钟还是很值得的.

    将Windows XP的原始安装光盘放入光驱中,启动UltraISO,按“F5”键,或者执行“工具”菜单中的“制作光盘镜像文件”,根据提示指定一个镜像文件的保存位置,随后程序会自动开始读取光盘并完成镜像文件的制作.

   (2)提取光盘镜像中的引导信息

    在UltraISO主界面中,执行“启动光盘”菜单中的“保存引导文件”命令,将引导信息保存到硬盘上备用,比如保存为“D:\Boot.bin”.

   (3)新建光盘镜像

     在UltraISO的“文件”菜单中执行“新建”命令;从资源管理器中,将前面我们已经准备好的“D:\XPSTAT”文件夹中的所有文件拖入UltraISO右上侧的文件窗口中.
     将“D:\STATDRV”目录直接拖放到UltraISO右上侧的文件窗口中,完成后在光盘的根目录中应当可以看到“STATDRV”的文件夹.

提示:

   拖放时一定不要包含XPSTAT目录本身!也就是说,文件添加成功后,在光盘的根目录下应当可以看到“I386”文件夹.

   (4)加载引导信息文件

    执行“启动光盘”菜单中的“加载引导文件”命令,找到上一步提取的光盘镜像的引导文件,即“D:\Boot.bin”.现在,新建的光盘镜像就具备与原版Windows XP安装光盘相同的引导功能了.

   (5)保存光盘镜像

    按“CTRL+S”或者执行“文件”→“保存”命令,指定一个保存光盘镜像的路径和文件名(如“F:\XPSTAT.ISO”等),确定后UltraISO就开始向指定路径生成光盘镜像文件了.

   (6)刻录安装光盘

    使用Nero或者其他任意一款支持光盘镜像文件刻录的工具软件,将上述得到的光盘镜像文件(这里即F:\XPSTAT.ISO)刻录到光盘中.现在,用这张安装盘在支持SATA的硬件环境下全新安装Windows XP,你就既不必按F6,也不需使用什么软盘,非常方便.

    制作集成SATA驱动程序的Windows XP安装光盘是一件比较复杂的工作,任何一个小小的失误都可能导致无法正确地加载驱动程序.此外,不同主板附带的SATA驱动程序的文件名称、数量、信息文件的内容各不相同,在集成时不能硬套,只有举一反三才能成. <script type=text/javascript charset=utf-8 src="http://static.bshare/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare/b/bshareC0.js"></script> 阅读(967) | 评论(0) | 转发(0) | 0

上一篇:Windows系统安装盘制作指南

下一篇:剖析Linux系统启动过程

相关热门文章
  • 承接自动化测试培训、外包、实...
  • Solaris PowerTOP 1.0 发布
  • For STKMonitor
  • busybox的httpd使用CGI脚本(Bu...
  • 项目小体会
  • 请教想查12个月的数据条数,看...
  • new/delete 和malloc/free 有...
  • ubuntu下hadoop环境的搭建...
  • 求助:如何用Linux架设ISATAP...
  • redhat图形界面不出先登录界面...
给主人留下些什么吧!~~ 评论热议

本文标签: 徒弟心得XPWindows