DPS完整教学-制作集成SATA驱动的WindowsXP安装盘
话少说,这是查阅各种制作方法,花了2天时间自己反复制作试验完成的最终完美方法,不仅轻易集成了目前多数SATA/SCSI驱动也易于自己添加更新驱 动。比较容易google到的一种手动修改txtsetup.sif的方法实践证明无法通过,在安装时提示目录结构错误。
总之,就这样,以后原生AHCI模式安装SATA2硬盘或RAID告别软驱。
所需软件:
DriverPacks BASE
DriverPack MassStorage (以上请访问driverpacks/DriverPacks/ 下载。目前最新版本:DP_MassStorage_wnt5_x86-32_705.7zDPs_
UltraISO或类似ISO制作软件
Nero Burning Rom或类似ISO刻录软件
7-Zip (可选,手动编辑驱动包inf用)
UltraEdit32或类似文本编辑软件(可选,手动编辑驱动包inf用。Windows记事本打开大文件效率低下)
1. 复制Windows XP光盘里的文件至硬盘,比如G:\WinXP
2. 安装DrivePacks。硬盘里新建一个目录(如E:\DriverPacks),把下载到的DriverPacks BASE文件放进来,运行,所有程序文件将被自解压到该目录下。


3. DriverPack MassStorage7zip格式压缩包放到E:\DriverPacks\DriverPacks目录下,不需要解压缩。这是 DriverPacks小组制作好的SATA/SCSI驱动包,包括常见的大多数磁盘设备,可以到这个页面查看所支持设备的列表和驱动版本:driverpacks/DriverPacks/devices.php?pag=m
php软件安装包4. 运行E:\DriverPacks\ 。初始界面可以选择语言。
5. 选择“设置-位置”,选中“磁盘”项,点击“浏览”按钮。选中刚才的G:\WinXP目录,确定。这时候左边的窗口会多出几项设置内容。
6. 在“设置-驱动包”中选中“DriverPack MassStorage 7.05”。这个软件也可以集成显示卡驱动、芯片组驱动等其它驱动,详细指南请访问 forum.driverpacks/viewtopic.php?id=1449
7. “驱动包整合方式”选择方式2。方式1虽然比较正统,但是会受到Windows安装程序检索文
件夹数量的限制,导致有部分驱动可能无法被载入。
8. 在“选项设置-快速整合缓存”里选中第一项。
9. 点击“整合”按钮,程序会自动把驱动整合进Windows XP安装目录里。
10. Windows XP安装光盘放入光驱,打开UltraISO,选择菜单“工具-制作光盘映像文件”或直接按F5
11. 先选定有XP安装盘的光驱,然后选择“提取引导文件”,保存得到一个bif后缀的引导文件。有了这个文件才能在制作ISO的时候依然保留XP安装盘的引导启动功能。
12. 然后选择菜单“启动光盘-加载引导文件”,读入刚才的引导文件,现在工具栏上就显示“可引导光盘”了。
13. G:\WinXP目录下的全部文件和文件夹拖放到上栏右边的窗口,选择菜单“开始-保存”,存成一个ISO文件。
14. Nero Burning RomISO刻出来就可以使用了,在安装的时候Windows会自动加载刚才集成的SATA/SCSI驱动,避免不到硬盘或直接蓝屏。
==============================进阶分隔线===============================
进阶使用:更新最新的驱动程序

DriverPacks 小组放出的驱动包都是定期更新的,但难免不能及时更新到最新的驱动,比如DriverPack MassStorage 7.05里包含的驱动只支持到Intel ICH8R,不支持最新的ICH9R。现在要说的就是如何手动添加ICH9R的驱动进DriverPacks的驱动包。

1. 首先要获得ICH9R的安装驱动包。很多厂商包括Intel自己也只提供软盘制作程序下载,不过技嘉提供了自解压文件。到技嘉寻ICH9R的主板如P35-DQ6的驱动,下载到一个目录解压缩得到一堆驱动文件。
2. 这堆驱动文件里一般都有一个扩展名为inf或者oem的文本格式文件,比如这里的就是“”。用UltraEdit32打开,在其中以“[HardwareIds.”为关键字进行搜索,可以到类似这样一段文字:

[HardwareIds.scsi.iaAHCI_ICH9R]
id = "PCI\VEN_8086&DEV_2922&CC_0106","iaStor"
3. 回到E:\DriverPacks\DriverPacks目录,用7-zipDP_MassStorage_wnt5_x86-32_705.7z 压缩,比如解压到E:\DriverPacks\DriverPacks\DP_MassStorage_wnt5_x86-32_705。在这个目录下 会有一个DriverPack_MassStorage_wnt5_x86-32.ini文件,用UltraEdit32打开。
4. 因为Intel SATA RAID驱动已经存在于DriverPacks驱动包里,所以只需要更新这个驱动到支持ICH9R就可以了,不必全新添加。在ICH9R驱动文件中,有一 个后缀是sys的文件名为iastor.sys,在DriverPack_MassStorage_wnt5_x86-32.ini里搜索 iastor.sys”,最终可以看到这样一段文字:

[IN-1]
ms_count = 1
ms_1_deviceName = "Intel SATA RAID Controllers"
ms_1_tag = "iastor"
ms_1_sysFile = "iastor.sys"
ms_1_hwids = "PCI\VEN_8086&DEV_2652&CC_0104,PCI\VEN_8086&DEV_27C3&CC_0104,PCI\VEN_8086&DEV_2682&CC_0104,PCI\VEN_8086&DEV_27C6&CC_0104,PCI\VEN_8086&DEV_2822&CC_0104,PCI\VEN_8086&DEV_2652&CC_0106,PCI\VEN_8086&DEV_2653&CC_0106,PCI\VEN_8086&DEV_27C1&CC_0106,PCI\VEN_8086&DEV_27C5&CC_0106,PCI\VEN_8086&DEV_2681&CC_0106,PCI\VEN_8086&DEV_2821&CC_0106"
ms_1_isBusExtender = false


开始的[IN-1]代表了驱动的存放地址,这些驱动就放在 E:\DriverPacks\DriverPacks\DP_MassStorage_wnt5_x86-32_705\D\M\IN\1 目录下。把刚才得到的ICH9R驱动复制到这个目录下覆盖就完成了驱动版本的更新。

但这个时候硬件ID还没有添加进新的硬件,就是ms_1_hwids那段的部分。在步骤2里到的字段就是这个硬件ID,取出其中的“PCI\VEN_8086&DEV_2922&CC_0106”字段添加进这个驱动包ini文件里。于是现在修改成这样:

[IN-1]
ms_count = 1
ms_1_deviceName = "Intel SATA RAID Controllers"
ms_1_tag = "iastor"
ms_1_sysFile = "iastor.sys"
ms_1_hwids = "PCI\VEN_8086&DEV_2652&CC_0104,PCI\VEN_8086&DEV_27C3&CC_0104,PCI\VEN_8086&DEV_2682&CC_0104,PCI\VEN_8086&DEV_27C6&CC_0104,PCI\VEN_8086&DEV_2822&CC_0104,PCI\VEN_8086&DEV_2652&CC_0106,PCI\VEN_8086&DEV_2653&CC_0106,PCI\VEN_8086&DEV_27C1&CC_0106,PCI\VEN_8086&DEV_27C5&CC_0106,PCI\VEN_8086&DEV_2681&CC_0106,PCI\VEN_8086&DEV_2821&CC_0106, PCI\VEN_8086&DEV_2922&CC_0106"
ms_1_isBusExtender = false

其实ICH9R原厂驱动里增加的其它兼容驱动,比如ICH8M等也可以用相同方法添加进来。


5. 保存ini文件,重新打包成7zip格式,就完成了对驱动包的更新。再按前面的方法制作XP光盘,这样制作出来就能支持ICH9/ICH9R南桥,测试通 过。重新打包的驱动包也可以命名为不同的名字,比如DP_MassStorage_wnt5_x86-32_708.7z,软件会优先识别版本号新的一个 包。