WindowsXP 安装到移动硬盘Word文档格式.docx
《WindowsXP 安装到移动硬盘Word文档格式.docx》由会员分享,可在线阅读,更多相关《WindowsXP 安装到移动硬盘Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
●UltraISO或者其他可以直接编辑ISO文件的软件。
●MicrosoftCabinetSDK:
...xp/en-us/Cabsdk.exe。
●可以直接刻录ISO文件的光盘刻录软件。
处理方法
操作的主要思路如下:
首先给原始版本的WindowsXP安装光盘制作ISO镜像,然后使用ISO编辑软件向其中添加一些文件,编辑好文件之后将改变的版本保存回ISO文件。
随后将修改过的ISO文件重新刻录到光盘上,利用这张光盘就可以向USB存储设备中安装WindowsXP了(下文为了统一,会以向移动硬盘中安装为例进行说明)。
详细操作步骤
是否支持从USB设备引导
通常,如果你的主板BIOS引导顺序选择菜单中有类似的选项,那么答案就是肯定的了。
如果引导顺序菜单中没有这样的选项,请尝试更新你的BIOS。
如果你也不能确定,那么最好登陆主板厂商网站获得准确答复。
准备硬盘
因为主板以及移动硬盘采用的技术各不相同,因此有些移动硬盘直接就可以作为引导盘使用,但有些则需要一些特殊的处理。
如果你不确定你的移动硬盘是否支持作为引导盘使用,可以首先将移动硬盘直接连接到计算机上,而不要通过任何USB集线器。
然后关掉计算机,从机箱中断开所有其他硬盘,并将你原始版本的WindowsXP安装光盘放入光驱中。
启动安装程序,然后进行到需要你选择目标硬盘分区的界面上。
如果可以看到安装程序列举的硬盘和分区,那就证明你的硬盘是支持的,否则就不能直接支持。
通常这并不是个大问题,你需要做的就是“恰当地”格式化你的硬盘。
重启动到正常的Windows环境下,然后使用HP的这个工具:
...download/20306.html,彻底格式化你的移动硬盘。
给安装光盘创建镜像
这一步相当简单。
将WindowsXP安装光盘放入光驱,运行UltraISO,然后在“工具”菜单下选择“制作光盘映像文件”选项(图1),并保存你的ISO文件即可。
提取需要处理的文件
光盘镜像创建好之后,关闭并重新打开UltraISO。
然后在“文件”菜单下使用“打开”命令打开你之前刚刚创建的ISO文件。
接下来进入i386文件夹,并选中下列文件(按下“Ctrl”键可以多选):
●TXTSETUP.SIF
●DOSNET.INF
●USB.IN_
●USBPORT.IN_
●USBSTOR.IN_
在“操作”菜单下选择“提取”命令(图2),然后将提取的文件释放到其他文件夹中。
提取IN_文件
运行前文中下载的Cabsdk.exe,将其中的文件释放到硬盘上(假设放在c:
\cabsdk下)。
然后运行“CMD”打开命令提示符窗口,并进入到c:
\cabsdk\bin,按照cabarcxUSBSTOR.IN_这样的格式对在上一步中提取出来的三个“.in_”文件运行cabarc命令(图3),最终你将会得到三个“.inf”文件。
●usb.inf
●usbport.inf
●usbstor.inf
这时候.IN_文件就可以全部删掉了。
编辑文件
这是本文要做的主要工作,同时我还会简要解释一下为什么这样做。
编辑工作可以使用纯文本编辑器,例如记事本完成。
TXTSETUP.SIF
这个文件是由WindowsXP安装程序在最初的安装阶段载入的,在这个文件中,我们会改变Windows安装程序对USB设备的处理方法。
默认情况下,安装过程中USB设备会被看作是输入设备,经过我们的修改,USB设备将会变成大容量存储设备(这种设备需要在使用之前被载入)。
首先,按照下面的示例处理[InputDevicesSupport.Load]和[BootBusExtenders.Load]字段(蓝色文字是新添加的内容,带有(*)的文字是删除的内容):
[BootBusExtenders.Load]
pci=pci.sys
acpi=acpi.sys
isapnp=isapnp.sys
acpiec=acpiec.sys
ohci1394=ohci1394.sys
usbehci=usbehci.sys
usbohci=usbohci.sys
usbuhci=usbuhci.sys
usbhub=usbhub.sys
usbstor=usbstor.sys
[InputDevicesSupport.Load]
usbehci=usbehci.sys(*)
usbohci=usbohci.sys(*)
usbuhci=usbuhci.sys(*)
usbhub=usbhub.sys(*)
usbccgp=usbccgp.sys
hidusb=hidusb.sys
serial=serial.sys
serenum=serenum.sys
usbstor=usbstor.sys(*)
接着对[BootBusExtenders]和[InputDevicesSupport]字段进行类似的处理(蓝色文字是新添加的内容,带有(*的)文字是删除的内容):
[BootBusExtenders]
pci="
PCI-Bustreiber"
files.pci,pci
acpi="
ACPIPlug&
Play-Bustreiber"
files.acpi,acpi
isapnp="
ISAPlug&
files.isapnp,isapnp
acpiec="
IntegrierterACPI-Controllertreiber"
files.none,acpiec
ohci1394="
IEEE-1394-Bus-OHCI-konformerAnschlusstreiber"
files.ohci1394,ohci1394
usbehci="
ErweiterterHostcontroller"
files.usbehci,usbehci
usbohci="
OpenHostcontroller"
files.usbohci,usbohci
usbuhci="
UniversellerHostcontroller"
files.usbuhci,usbuhci
usbhub="
Standard-USB-Hubtreiber"
files.usbhub,usbhub
usbstor="
USB-Speicherklassentreiber"
files.usbstor,usbstor
[InputDevicesSupport]
usbehci="
files.usbehci,usbehci(*)
usbohci="
files.usbohci,usbohci(*)
usbuhci="
files.usbuhci,usbuhci(*)
usbhub="
files.usbhub,usbhub(*)
hidusb="
HID-Parser"
files.hidusb,hidusb
serial="
SerialPortDriver"
files.none,serial
serenum="
SerialPortEnumerator"
files.none,serenum
usbstor="
files.usbstor,usbstor(*)
usbccgp="
USBGenericParentDriver"
files.usbccgp,usbccgp
随后,我们还要在注册表中写入一些键。
txtsetup.sif允许你提供一些文件,这些文件将在系统安装过程中被合并到注册表中。
请在[HiveInfs.Fresh]字段加入下列蓝色字的内容:
[HiveInfs.Fresh]
AddReg=hivedef.inf,AddReg
AddReg=hivesys.inf,AddReg
AddReg=hivesft.inf,AddReg
AddReg=hivecls.inf,AddReg
AddReg=hiveusd.inf,AddReg
AddReg=dmreg.inf,DM.AddReg
AddReg=usbboot.inf,usbservices
同时在[SourceDisksFiles]字段下加入下列蓝色文字内容:
[SourceDisksFiles]
usbboot.inf=1,,,,,,_x,3,,3
bootvid.dll=1,,,,,,3_,2,0,0,,1,2
kdcom.dll=1,,,,,,3_,2,0,0,,1,2
最后,保存并关闭TXTSETUP.SIF,这一步工作就完成了。
DOSNET.INF
接下来打开DOSNET.INF,把第二个[Files]字段变成下面的样子(蓝色文字为新添加内容):
[Files]
d1,usbboot.inf
d1,_default.pif
d1,12520437.cpx
d1,12520850.cpx
usb.inf
编辑[StandardHub.AddService]和[CommonClassParent.AddService]字段,在其中添加下面显示的蓝色文字内容:
[StandardHub.AddService]
DisplayName=%StandardHub.SvcDesc%
ServiceType=1;
SERVICE_KERNEL_DRIVER
StartType=0;
SERVICE_DEMAND_START
ErrorControl=1;
SERVICE_ERROR_NORMAL
ServiceBinary=%12%\usbhub.sys
LoadOrderGroup=BootBusExtender
[CommonClassParent.AddService]
DisplayName=%GenericParent.SvcDesc%
SERVICE_KERNEL_DRIVER
SERVICE_DEMAND_START
SERVICE_ERROR_NORMAL
ServiceBinary=%12%\usbccgp.sys
usbport.inf
编辑[EHCI.AddService]、[OHCI.AddService]、[UHCI.AddService]和[ROOTHUB.AddService]字段,在其中添加下面显示的蓝色文字内容:
[EHCI.AddService]
DisplayName=%EHCIMP.SvcDesc%
ServiceBinary=%12%\usbehci.sys
[OHCI.AddService]
DisplayName=%OHCIMP.SvcDesc%
ServiceBinary=%12%\usbohci.sys
[UHCI.AddService]
DisplayName=%UHCIMP.SvcDesc%
ServiceBinary=%12%\usbuhci.sys
[ROOTHUB.AddService]
DisplayName=%ROOTHUB.SvcDesc%
ServiceType=1;
usbstor.inf
在[USBSTOR.AddService]字段中增加/修改下列蓝色文字内容:
[USBSTOR.AddService]
DisplayName=%USBSTOR.SvcDesc%
ServiceType=1
StartType=0
Tag=3
ErrorControl=1
ServiceBinary=%12%\USBSTOR.SYS
新文件:
USBBOOT.INF
在之前处理的文件所在的文件夹中新建一个名为USBBOOT.INF的文件,然后输入下列内容:
[usbservices]
HKLM,"
SYSTEM\CurrentControlSet\Services\USBSTOR"
"
DisplayName"
0x00000000,"
USBMassStorageDriver"
ErrorControl"
0x00010001,1
Group"
SystemReserved"
ImagePath"
0x00020000,"
system32\DRIVERS\USBSTOR.SYS"
Start"
0x00010001,0
Type"
SYSTEM\CurrentControlSet\Services\usbehci"
USB2.0EnhancedHostControllerMiniportDriver"
system32\DRIVERS\usbehci.sys"
SYSTEM\CurrentControlSet\Services\usbhub"
USB2EnabledHub"
system32\DRIVERS\usbhub.sys"
SYSTEM\CurrentControlSet\Services\usbuhci"
MicrosoftUSBUniversalHostControllerMiniportDriver"
system32\DRIVERS\usbuhci.sys"
0x00010001,0HKLM,"
SYSTEM\CurrentControlSet\Services\usbohci"
MicrosoftUSBOpenHostControllerMiniportDriver"
system32\DRIVERS\usbohci.sys"
将inf文件重新打包
如果原始的.IN_文件还没有删除,那么现在必须删掉,因为我们需要用新的文件将其替换。
再次打开一个命令提示行窗口,然后进入到保存这些文件的文件夹,然后执行下列命令:
cabarcnUSB.IN_usb.inf
cabarcnUSBPORT.IN_usbport.inf
cabarcnUSBSTOR.IN_usbstor.inf
这样你将能看到三个IN_文件(图4)。
恭喜,所有修改工作就都已经完成了。
重新装入ISO文件
用UltraISO打开你的WindowsXP