无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 17085|回复: 26
打印 上一主题 下一主题

【经验分享】 抛砖引玉! 教你怎么手动添加PE驱动!

[复制链接]
跳转到指定楼层
1#
发表于 2008-11-15 11:34:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于PE驱动的问题,无忧很早以前,有一篇"PE研究院"中已经提出来了,现在我再把自己总结的经验给大家分享一下!

PE最关键的就是内核驱动和外置驱动,内核驱动主要就是南桥驱动.针对RAID.SATA.以及AHCI,这是PE最关键的部份.主要是让PE能够识别系统的硬盘和RAID磁盘阵列,集成在WINPE.IS_/SYSTEM32/DRIVERS/中..相关驱动的配置在txtsetup.sif中...这里就介绍txtsetup.sif的配置...

关于安装配置文件txtsetup.sif的简单说明
[WinntDirectories]
这个字段是用代码表示文件拷贝的目标文件夹,其根目录为%WinDir%即安装指定的Windows文件夹。
[SourceDiskFiles]
根据前面设定的代码表示文件拷贝的具体细节,下面三段为集成SATA SCSI等驱动时所用
[HardwareIdsDatebase]—硬件标识
[SCSI.load]——SCSI驱动加载
[SCSI]??——SCSI设备说明
添加srs驱动实例:
      在WinPE中添加sata,raid驱动的方法(这里以Intel Matrix Storage Manager driver为例,以便于说明,以下描述的驱动文件名只基于本实例,实际操作中的具体的文件名称以需要添加的具体驱动为准)
1、准备材料:
a、原版驱动文件
b、从WinPE中提取的txtsetup.sif文件
2、从WinPE中提取txtsetup.sif文件:
      先将WinPE中的winpe.is_重命名为winpe.cab,然后用RAR解压出winpe.iso,用UltraISO打开它,将txtsetup.sif提取出来,并用记事本打开备用。
3、修改txtsetup.sif文件
a、打开驱动包,里面有一个扩展名为“.inf”或“.oem”的小文件,如“oemsetup.inf”或者“txtsetup.oem”等(本例中为“txtsetup.oem”),用记事本打开备用;
b、在txtsetup.sif中查找[SourceDisksFiles]字段,在其下添加iaStor.sys=1,,,,,,4_,4,1,,,1,4
c、查找[SCSI.Load]字段,在其下添加iaStor=iaStor.sys,4
d、切换到刚才打开的txtsetup.oem,查找HardwareIds关键字,将该字段下的代码全部拷贝到txtsetup.sif文件的[HardwareIdsDatabase]字段末尾,但需要更改一下代码的格式,比如将id = "PCI\VEN_8086&DEV_27C3&CC_0104","iaStor"改为PCI\VEN_8086&DEV_27C3&CC_0104=iaStor
e、查找[SCSI]字段,在其下添加iaStor="Intel(R) 82801FBM SATA AHCI Controller (Mobile ICH6M)"
至此,修改txtsetup.sif文件部分完成,将修改后的sif文件替换原来的文件。
4、复制驱动文件
     将驱动文件iaStor.sys用makecab.exe压缩成iaStor.sy_并添加到PE的system32\DRIVERS目录下,然后将修改后的winpe.iso用makecab.exe重新压缩成winpe.is_替换原来的文件。
至此整个添加驱动工作完成,重启动以测试成功与否。


其中,最麻烦的就是更新或添加驱动的时候,新驱动中删除了对老硬件的支持或者硬件代码有所改变,这个时候就要对照txtsetup.sif文件手动修改,新驱动删除的硬件ID就不能让txtsetup.sif 中还有相关配置,或者保留老驱动文件,为了对老爷机更好的支持,就必须让txtsetup.sif 硬件ID的指向老驱动文件.新驱动带来的新硬件ID就要自己手动添加进去,在这里存在老驱动文件和新驱动文件的硬件ID重复问题,这也是工作量最大的地方,通常我是把老驱动文件重新命名保存,然后找到硬件ID重复的记录,优先让它指向新驱动,然而新驱动中删除的硬件ID,就改成指向老驱动文件,一定要细心,否则出错的机率是相当大的.

曾经我在制作"开始懂了"WINPE奥运纪念正式版的时候,测试过从MSDN原版的I386文件和深度WINXP_SP3 9.0的I386文件中提取相关内核驱动,但是遇到容量问题,如果照这样做出来,内核文件是相当大的,会影响到WINPE加载的速度,于是我放弃了.接着我研究了老毛桃911版本的内核驱动及各网友提供的WINPE版本.让人失望的就是,各网友的WINPE版本都是用911的内核,甚至根本没有变化.还是2007年的驱动,于是找到深度R大的ZPE系列驱动,发觉此人做的驱动精简了911,而且在一些位置上做了修正,并添加了一些新的,他的思路给了我启发,接着我把911内核提取出来,先修正911内核中错误的地方,然后手动添加了INTEL最新的南桥驱动,支持ICH10R P45板子,然后在"开始懂了"奥运纪念正式版中发布,没想到网友们给我的回馈让我很高兴.在P45主板上都能正常使用,而且在一些"问题"笔记本上也能使用.接着我又把AMD最新的支持SB750南桥驱动添加进去并做了追加发布版本.我拿到电脑城测试黑5+780G+SATAII硬盘.启动一切正常.于是为了解决WINPE启动速度慢的问题,便使用GRUB开始菜单加入USB2.0驱动启动,这样WINPE启动只要10秒左右了,这一步费了很多精力,为了保证网友们下载后能正常使用,我用自己的U盘量产了不下20次,确保稳定性...虚似机是测试不出来的...

外置驱动:
建议使用911原版本结构,使用一个WIM外置包,效率和速度是最快的.很多网友把外置中的程序每个都打包成WIM...WIM的好处是不怕病毒,每一个程序或者驱动包都打包成WIM.在运行的时候系统要进行反复的虚拟解压和挂载,效率可想而知,对小内存的用户影响更为明显,WIM不能跟WINRAR和CAB技术相提并论...
驱动,最好使用官方版本,从中提取后,一定要检查驱动配置文件,很多网友自己制作的驱动包,虽然是从官方版本中提取出来的,但就是在WINPE上无法正常使用,问题的关键就是配置文件和压缩成CAB的时候没有处理好INF中的相关配置...

好了,以上就是我驱动的制作经验,由于时间问题,不能再这上面继续研究了,还望各位PE爱好者把PE做得更好...PE最重要的不是外置软件有多少,不是功能有多强,不是界面有多美观,而是驱动,只有识别了你的电脑硬件,WINPE才有用武之地!

"开始懂了"WINPE奥运纪念版 在我QQ空间有下载,欢迎各位WINPE爱好者进来探讨一下你们的经验.

个人空间地址:http://new.qzone.qq.com/14831073/infocenter













[ 本帖最后由 wsw8810 于 2008-11-15 13:11 编辑 ]
2#
发表于 2008-11-15 11:50:43 | 只看该作者
好东西,又让俺学到不少。顶一个!
回复

使用道具 举报

3#
发表于 2008-11-15 12:05:16 | 只看该作者
谢谢LZ,又让俺学到了不少东东
回复

使用道具 举报

4#
发表于 2008-11-15 13:36:21 | 只看该作者
使用R版的驱动最放心。呵呵,怎么说R版都是深度论坛的技术总版,所有深度精简版XP系统,哪个驱动不是出自R大。。一句话,R版的驱动比自己的放心多了。。

说上边的话好像有些盲目的追捧,但是大伙想想,内核驱动复杂程度并非一般坛友所能搞定的。。
回复

使用道具 举报

5#
 楼主| 发表于 2008-11-15 16:36:54 | 只看该作者
R大的内核级驱动精简了很多,本着兼容性为出发点.我尽量没有对911版本内核进行精简,都是添加或修正...就这两项工作把我搞得太累了.以至于后来研究U盘的启动和USB2.0的驱动在GRUB上的堆栈覆盖问题.总之.搞这个太累了...现在没时间继续研究了.12月份还得软件资格考试.希望大家能把WINPE的内核驱动和外置驱动更新一下,我也好省省力免费享受一下.HEHE.
回复

使用道具 举报

6#
发表于 2008-11-15 17:09:36 | 只看该作者
桌面型的磁盘控制器驱动我都整理得快差不多了,磁盘驱动本身就有不少冲突,并不是随便组合一下DriversPacker就可以完事的,整理磁盘驱动的最关键问题就是排除冲突。
回复

使用道具 举报

7#
发表于 2008-11-15 23:16:29 | 只看该作者
声卡、显卡、网卡的驱动我在尝试加载虚拟光驱的方式 加入PE。
挂载ISO读取驱动的时候占用内存比WIM小一下,应该可以挂载很多驱动的。现在在配置文件碰了点儿问题,正在着手解决。

还有就算,我觉得使用7-ZIP自解压到硬盘在加载声 显 网 也是一种方案,只是无盘的电脑无法使用
回复

使用道具 举报

8#
发表于 2008-11-15 23:38:39 | 只看该作者
我们的NETWINXP版主的驱动也不错哈。
回复

使用道具 举报

9#
发表于 2008-11-16 10:22:20 | 只看该作者
原帖由 netwinxp 于 2008-11-15 17:09 发表
桌面型的磁盘控制器驱动我都整理得快差不多了,磁盘驱动本身就有不少冲突,并不是随便组合一下DriversPacker就可以完事的,整理磁盘驱动的最关键问题就是排除冲突。


期待NET早日放出你的内核版本,最近新机器多了不少啊。
回复

使用道具 举报

10#
发表于 2008-11-17 21:54:10 | 只看该作者
好,我真需要呢,新机器是ich10的。
回复

使用道具 举报

11#
 楼主| 发表于 2008-11-17 22:56:34 | 只看该作者
原帖由 netwinxp 于 2008-11-15 17:09 发表
桌面型的磁盘控制器驱动我都整理得快差不多了,磁盘驱动本身就有不少冲突,并不是随便组合一下DriversPacker就可以完事的,整理磁盘驱动的最关键问题就是排除冲突。


驱动兼容性的测试光靠一个人来测试,这工作量太大了...除非他的本职工作就是某硬件厂商的驱动开发人员对这个相当熟悉,我曾经也研究过相关驱动的INF配置文件,包括总线级驱动,最终得出的结论,很多因为驱动的故障并不是配置文件中几个相关的设置项,而是SYS里面的问题,由于本人能力有限,无法深入研究WINDOW低层驱动及实现相关接口的技术,所以只能尽自己最大的努力,把驱动湊进来,以求最大兼容性.这是最笨的做法,也是无懒之余的做法.幸好有广大网友帮我做测试.最后才得以发布...个人感觉驱动问题还有待完善.请NETWINXP继续努力.我为人人,人人为我...
回复

使用道具 举报

12#
发表于 2008-11-18 11:07:53 | 只看该作者
刚刚接触老毛桃PE,对于怎么添加个性驱动还是一知半解,我的做法是:
1   先用UtrlaISO打开PE的ISO,将OP.WIM提取出来
2   然后用WIMTOOL,可写挂载
3   把自己本机的网卡驱动用XCAB压成DRIVERS_NET.CAB
4   把OP.WIM里的\PE_OUTERPART下的DRIVERS_NET.CAB替换掉
5   再保存回OP.WIM,再添加进ISO里刻光盘
可为什么光盘启动以后,能进PE但是外置程序包就找不到了,桌面只有“我的电脑”,“我的文档”了,在桌面上显示那些支持网络、显卡等图标,且程序中所有定义的工具快捷键都没有了,搞不懂问题到底出在哪里了。有网友说是压缩OP.WIM时出了问题,在使用WIMTOOL压缩OP.WIM的时候,是选择在位置程序上,而正确的方法是直接在OP目录上,右键,压缩为OP.WIM。请问应该怎么弄啊,能不能请哪位截张图上来给小弟解解惑啊
回复

使用道具 举报

13#
发表于 2008-11-18 15:39:51 | 只看该作者
写得不错啊,就是看个人有没有这样专心去写了,因为很多不是说简单的复制粘贴就可以完成的!
回复

使用道具 举报

14#
发表于 2008-11-18 20:58:39 | 只看该作者

谢谢你的PE内核

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=132854&extra=page%3D1


采用wsw8810做的PE内核.基于XpSp3.版权归wsw8810.在此表示支持.

[ 本帖最后由 66369 于 2008-11-18 21:18 编辑 ]
回复

使用道具 举报

15#
发表于 2008-11-18 21:06:14 | 只看该作者
好文章啊,正在这方面想办法呢
回复

使用道具 举报

16#
 楼主| 发表于 2008-11-19 16:10:30 | 只看该作者
66369谢谢你的支持,希望你能把PE的内核驱动更新一下,越做越好.到时候我也来下载一个...
回复

使用道具 举报

17#
发表于 2008-11-19 16:58:10 | 只看该作者
原帖由 ms07b3 于 2008-11-18 11:07 发表
刚刚接触老毛桃PE,对于怎么添加个性驱动还是一知半解,我的做法是:
1   先用UtrlaISO打开PE的ISO,将OP.WIM提取出来
2   然后用WIMTOOL,可写挂载
3   把自己本机的网卡驱动用XCAB压成DRIVERS_NET.CAB
4   ...

我怎么看着有些别扭,你应该先解开OP.WIM找到PE_OUTERPART里面的DRIVERS_NET.CAB,然后解开这个DRIVERS_NET.CAB,再把本机的网卡驱动添加到解开的DRIVERS_NET里面,再用XCAB重新压缩并替换原DRIVERS_NET.CAB就行。
回复

使用道具 举报

18#
发表于 2008-11-19 16:59:35 | 只看该作者
这个在XP系统下进行就可以了,没必要搞得那么麻烦吧。
回复

使用道具 举报

19#
发表于 2008-11-20 23:43:42 | 只看该作者
感觉很麻烦,郁闷啊。
回复

使用道具 举报

20#
发表于 2008-11-21 00:17:40 | 只看该作者
我记得自动安装 XP的时候,可以在$OEM$中自动寻找驱动
PE为什么没有这类参数呢?
回复

使用道具 举报

21#
发表于 2008-11-21 00:29:10 | 只看该作者
很好很强大,正在学习中...
回复

使用道具 举报

22#
发表于 2008-11-21 08:33:37 | 只看该作者
好贴!谢谢楼主分享!!!
回复

使用道具 举报

23#
发表于 2008-11-21 11:51:27 | 只看该作者
怎么找不到OEMSETUP.INF  TXTSETUP.OEM
回复

使用道具 举报

24#
发表于 2009-1-17 10:02:53 | 只看该作者
学习了~
顺道去你空间看看!~打扰了!
回复

使用道具 举报

25#
发表于 2009-4-16 14:48:00 | 只看该作者
学  习  中
回复

使用道具 举报

26#
发表于 2010-3-17 06:10:58 | 只看该作者
这个问题还真值得一学啊。
回复

使用道具 举报

27#
发表于 2010-3-17 16:16:39 | 只看该作者
慢慢看,太多学不会
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-12-1 18:15

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表