分类: WINDOWS
2008-10-15 14:49:53
Win XP与Win 2000(当然还包括Win NT 4.0)同属于Win NT系列,其启动过程是非常相似的。虽然Bart开发w2kall.bin的初衷是制作3合1的Windows 2000,但既然它能够引导Windows 2000,那么它能否引导Windows XP呢?答案非常肯定(太棒了!)。虽然与制作Win2000 3合1的过程类似,但其中有一些明显的不同,而且我们还需要对w2kall.bin进行一些适当的改造,希望朋友们多加注意。
下面我介绍Windows XP 2合1启动光盘的制作过程(你也可以去试一试Windows NT 4.0)。
1. 所需工具
(1)w2kall.bin
必须。Windows 2000/XP光盘启动引导文件。
下载地址
(2)CDImage.exe(命令行界面)或CDImagegui.exe(图形界面)
必须。可启动光盘镜像制作工具,生成标准的ISO文件,同时具有优化光盘上文件的功能,使相同的文件只刻录一个,其他的文件都连接到该文件。
下载地址 http://www.tech-hints.com/prog/cdimage.zip
http://www.tech-hints.com/prog/cdimagegui.zip
(3)WinZip、WinImg
可选。解Windows XP安装软盘组的img文件。可替换方法是制作6张安装软盘,然后将6张软盘上的全部文件复制到硬盘。
下载地址 http://www.winimage.com/win../image/winima60.zip
(4)UltraEdit
必须。十六进制编辑器,修改启动引导文件中的显示文字,并修改Windows XP不同版本的存放路径。
下载地址
(5)Windows XP安装软盘组
必须。用软盘引导机器,加载必要的系统文件及基本驱动程序,然后从光盘继续安装。
专业版及家庭版的安装软盘是不同的,二者不能混用。XP的安装软盘组必须从微软网站下载:
简体中文专业版:winxp_cn_pro_bf.exe
下载地址
简体中文家庭版:winxp_cn_hom_bf.exe
下载地址
(6)VMware(或Virtual PC)和Nero
可选。测试制作完成的3合1镜像文件并烧录光盘。
2. 目录及文件结构
保证硬盘上有足够空余空间(假设将文件存放在硬盘d:,全部2个版本的原始文件约占用空间为1.02 GB,生成的镜像文件约为558 MB),建立如下目录结构,并复制文件w2kall.bin、cdimage.exe到相应位置:
d:\winxp\w2kall.bin
d:\winxp\cdimage.exe
d:\winxp\root\home
d:\winxp\root\wpro
其中,d:\winxp\root\是Windows XP 2合1光盘的根目录,d:\winxp\root\home用于存放Windows XP家庭版文件,d:\winxp\root\wpro用于存放Windows XP专业版文件。
要点:“home”和“wpro”的目录名称需要固定在w2kall.bin中,只能是4个字符长度。若需要存放在其他目录下,必须用UltraEdit修改w2kall.bin文件,找到“WPROWSRVASRV”,将其替换为其他名称,并相应修改目录结构。此外,还必须在后面的配置中进行相应修改。
3. 文件复制
将Windows XP家庭版光盘上的文件全部复制到home目录,将Windows XP专业版光盘上的文件全部复制到wpro目录。
必须确保复制了全部文件和子目录,包括具有系统和隐藏属性的。
复制完毕后,清除d:\winxp\root\下全部文件和子目录的系统、隐藏和只读属性。
将d:\winxp\root\home目录下的win51和win51ic复制到d:\winxp\root\,将d:\winxp\root\wpro目录下的win51ip复制到d:\winxp\root\。
要点:d:\winxp\root\下面必须有win51、win51ic和win51ip文件,这是我们欺骗安装程序的标志:这张光盘是Windows XP原始安装盘。
4. 配置安装程序
将下载到的winxp_cn_pro_bf.exe文件用WinZip释放到硬盘任一目录,得到6个img文件。用WinImg将6个img文件释放到目录d:\winxp\root\wpro\。
将下载到的winxp_cn_hom_bf.exe文件用WinZip释放到硬盘任一目录,得到6个img文件。用WinImg将6个img文件释放到目录d:\winxp\root\home\。
要点:这是我们模拟软盘安装的关键,一定要连带system32目录(里面有两个文件)一起释放。
从d:\winxp\root\wpro\i386目录中复制bootfix.bin,将其分别粘贴到d:\winxp\root\home和d:\winxp\root\wpro。该文件的作用就是光盘启动后显示一条信息“Press any key to boot from CD.”,并等待5秒钟,若没有按键,则从硬盘启动;否则从光盘启动。
如果觉得5秒的延时太短,可以用Ultraedit编辑该文件,找到“Press any key to boot from CD.”后面的“49 00 12 00”,将“49”改为“AA”延时可达10秒,改为“FF”延时可达15秒。
5. 修改w2kall.bin
w2kall.bin是专门针对Windows 2000 3合1启动光盘而开发的,要使它适用于Windows XP 2合1光盘的启动引导,我们必须对其进行一些适当的修改。
用UltraEdit打开d:\win2k\root\w2kall.bin,找到启动菜单:
[A] Windows 2000 Professional - English
[B] Windows 2000 Server - English
[C] Windows 2000 Advanced Server - English
Choose an option and press [Enter]:
将其修改为:
[A] Windows XP Professional
[B] Windows XP Home
==================================
Choose an option and press [Enter]:
再查找“WPROWSRVASRV”,将其替换为找到“WPROHOMEHOME”。
启动菜单接受4个键:A、B、C键和回车键,若用户按了A和B键,将进行相应的安装,若用户按了C键,将安装家庭版,且没有提示。这样的处理比较简单,高手们可以考虑屏蔽C键。
要点:“WPROHOMEHOME”是光盘安装路径,一定要与目录结构相匹配。最后一个“HOME”对应C键,若用户按了C键后,应使其能够找到相应目录,或在启动菜单中干脆注明“[B/C] Windows XP Home”。
6. 修改setupldr.bin和txtsetup.si_
用UltraEdit打开d:\winxp\root\home\setupldr.bin,用ASCII方式替换“i386”为“home”,共4处。
用UltraEdit打开d:\winxp\root\wpro\setupldr.bin,用ASCII方式替换“i386”为“wpro”,共4处。
存盘退出。
将文件d:\winxp\root\home\txtsetup.si_复制到d:\,在d:\下运行命令行命令:
expand txtsetup.si_ txtsetup.sif
用UltraEdit打开d:\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\home"”;
存盘退出。
将txtsetup.sif改名为txtsetup.si_,覆盖掉d:\winxp\root\home\txtsetup.si_。
将文件d:\winxp\root\wpro\txtsetup.si_复制到d:\,在d:\下运行命令行命令:
expand txtsetup.si_ txtsetup.sif
用UltraEdit打开d:\txtsetup.sif,替换“SetupSourcePath = "\"”为“SetupSourcePath = "\wpro"”;
存盘退出。
将txtsetup.sif改名为txtsetup.si_,覆盖掉d:\winxp\root\wpro\txtsetup.si_
要点:这两个文件中的路径安装程序告诉安装程序从何处复制文件,必须与目录结构相匹配。
7. 配置完毕的目录结构及文件列表
8. 制作ISO文件
CDImage程序加“-o”参数优化后生成的镜像文件约为558 MB,我们假设将它存放在f:盘的根目录下,命令如下:
d:\winxp\cdimage -lWinXP-2in1 -t09/05/2001,12:00:00 -g -h -n -o -m -bd:\winxp\w2kall.bin d:\winxp\root f:\wxp-2in1.iso
上述命令中各参数含义分别为:
-l:设置光盘卷标。此处为“WinXP-2in1”。
-t:设置光盘上所有文件的生成日期。此处为“2001年9月5日格林威治时间(GMT)上午12点整”。
-g:转换本地时间与格林威治时间(GMT)。但如果是在Windows XP系统下,该参数似乎不起作用,“-t”参数指定的是GMT时间,而文件的生成时间是“-t”指定的时间加上时区转换后的本地时间。如,上例中的文件生成本地时间是“20:00:00”,即GMT+8=北京时间。
-h:包含隐藏的目录和文件。
-n:允许长文件名。
-o:优化相同的文件,最重要的参数,这是我们将3个版本的1.02 GB文件压缩到558 MB的关键。
-m:允许生成的ISO文件超过640 MB。
-b:光盘启动引导程序,此处我们使用了w2kall.bin。
d:\winxp\root:源文件路径,将作为光盘的根目录。
f:\wxp-2in1.iso:最后生成的ISO文件,我们要的就是它。
要点:cdimage /?可显示所有选项。CDImagegui提供了一个图形界面,使用更直观,功能是一样的。
9. 测试ISO文件
用VMware加载wxp-2in1.iso文件,设置第1启动设备为光驱。从光盘启动后,系统首先显示信息“Press any key to boot from CD.”,按任意键后,出现[A]、[B]2个选项菜单,键入A、B键然后回车,可启动相应安装版本,键入C键然后回车,可安装家庭版(但没有任何提示)。此后的安装与原版光盘的安装一致。需要逐个安装,以测试各个版本的完整性。
10. 增加特殊文件
可以根据个人的爱好,在光盘上再增加一些特殊文件,只需将其复制到d:\winxp\root目录下,并重新制作ISO文件。
11.烧录光盘
ISO镜像文件测试无误后,即可用自己熟悉的软件(例如Nero)将其烧录到光盘。 这样,一张可启动的Windows XP 2合1光盘就制作完成了。