无忧启动论坛

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

【20130906自动化程度大幅提高】给Windows 8 PE(X86 X64通吃)追加OEM 驱动

    [复制链接]
跳转到指定楼层
1#
发表于 2013-7-19 12:32:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 chiannet 于 2013-9-22 17:12 编辑

此法适用于X86或X64Win7/8下给 X64或X86 win8PE 追加OEM SRS 驱动,可以是磁盘控制器、网卡、无线网卡、声显卡、蓝牙等等。



A、前期准备工作


1、自备Beyond Compare。

2、自备MSDN windows 8 X64 (X86) RTM ISO内的resource下的 boot.wim,X64\WIM或X86\WIM;

   我用的是我的HP win8笔记本rocover分区的里的boot.wim来搞的(该本子原本是OEM win8 X64,但寡人实在用不惯Win8,就安装了X64 win7,但rocover分区的内容一直没动它,保留在那里,哪天一高兴,还可以可以恢复为win8)

3、安装Windows ADK For Windows 8
      Windows评估和部署工具包 (Windows ADK) For Windows 8, 从MS官网下载完整的部署包太大了,速度又慢,我们现在只需要一个部署工具就足够了。按照下列方法选择性在线安装,下载量不到40M。先从MS官网下载这个
在线安装程序adksetup.exe,然后cd到adksetup.exe所在的目录,键入以下命令:
  1. adksetup /installpath c:\ADK /features OptionId.DeploymentTools
复制代码
大意是把仅把ADK组件中的DeploymentTool安装到C:\ADK。

其他部署工具的featureID为:

功能                                                                            标识符
应用程序兼容性工具包 (ACT)                               OptionId.ApplicationCompatibilityToolkit
部署工具                                                              OptionId.DeploymentTools
Windows 预安装环境 (Windows PE)                     OptionId.WindowsPreinstallationEnvironment
用户状态迁移工具                                                OptionId.UserStateMigrationTool
批量激活管理工具 (VAMT)                                    OptionId.VolumeActivationManagementTool
Windows 性能工具包 (WPT)                                 OptionId.WindowsPerformanceToolkit
Windows 评估工具包                                            OptionId.WindowsAssessmentToolkit
Windows 评估服务 - 客户端                                  OptionId.WindowsAssessmentServicesClient
Windows 评估服务                                                OptionId.WindowsAssessmentServices
Microsoft? SQL Server? 2012 Express                 OptionId.SqlExpress2012
.NET Framework                                                    OptionId.Netfx



4、自备待集成的驱动,集中放置在X64\MY_Driver或X86\MY_Driver下
     集成前要稍微处理下驱动inf:由于NT6可原生驱动AHCI 控制器,那些类似于PCI\VEN_8086&DEV_1E03&CC_0106的HWID是可以屏蔽的,不需要集成的,12.7及更新版RST驱动XXCC_0104 Raid控制器集合是必须的(某些超级本的混合磁盘就要用的新版RST来驱动,win8原配的iastorv的支持列表虽有该HWID,但是支持不了!!),还有下列特征的企业版RST

  1. Abstract:  Windows* INF File for SCU Intel(R) Rapid Storage Technology Enterprise Driver
  2.               Installs: RSTe SCU RAID Controller Miniport (without RST Filter Driver)
  3.                Only for Windows 8 releases
  4. DriverVer=11/02/2012,3.6.0.1090
复制代码
驱动,拥有win8 内部iastorv所不支持的C600系列Raid控制器的驱动,我想这个也是必须要集成的。

5、自备你自己的PE的注册表文件,放置到X64\REG或X86\REG下


B、开始工作了

1、以管理员身份运行下列批处理

  1. <P>@Echo Off
  2. COLOR 2F
  3. cd /d "%~dp0"
  4. SETLOCAL
  5. echo.
  6. echo.
  7. echo  ========================================
  8. echo  请选择要整合驱动的8PE的类型,然后按回车
  9. echo  ========================================
  10. echo.
  11. echo.
  12. CHOICE /C 1234 /M ":  64位请按1; 32位请按2; 64位和32位请选择3; 放弃请按4。"
  13. IF "%errorlevel%"=="4" goto :exit
  14. IF "%errorlevel%"=="3" goto :Both
  15. IF "%errorlevel%"=="2" goto :X86
  16. IF "%errorlevel%"=="1" goto :X64
  17. goto exit</P>
  18. <P>:X64
  19. set P=X64
  20. GOTO START</P>
  21. <P>:X86
  22. set P=X86
  23. GOTO START</P>
  24. <P>:Both
  25. SET EI=YES
  26. GOTO X64</P>
  27. <P>:START
  28. Echo.
  29. ECHO 正在创建临时目录及准备文件......
  30. if exist %windir%\SysWOW64 (set PTH=amd64
  31. ) else (
  32. set PTH=x86
  33. )
  34. set PTH="C:\ADK\Assessment and Deployment Kit\Deployment Tools\%PTH%\DISM\</P>
  35. <P>if not exist %PTH%" (
  36. Echo. 未安装ADK\Assessment and Deployment Kit或请指定实际的安装路径。
  37. goto :Exit
  38. )
  39. copy %P%\WIM\boot.wim %P%\WIM\bootB.wim /y
  40. if not exist %P%\WIM\bootB.wim (
  41. Echo. 复制%P%\WIMBOOT.WIM副本失败!!!!
  42. goto :Exit
  43. )
  44. RD .\Boota /S /Q>NUL 2>NUL
  45. RD .\bootb /S /Q>NUL 2>NUL
  46. md .\Boota
  47. md .\bootb
  48. Cacls .\boota /t /e /c /g everyone:f >NUL 2>NUL
  49. Cacls .\bootb /t /e /c /g everyone:f >NUL 2>NUL
  50. CLS
  51. </P>
复制代码




2、 集成驱动

  1. <P>copy .\%P%\reg\SOFTWARE  .\Boota\windows\system32\config /Y >NUL 2>NUL
  2. copy .\%P%\reg\SYSTEM  .\Boota\windows\system32\config /Y >NUL 2>NUL</P>
  3. <P>Echo.
  4. ECHO 确认驱动文件放在%P%\MY_Driver目录或其子目录下
  5. Echo.
  6. ECHO 按任意键开始集成驱动文件......
  7. Pause >nul
  8. %PTH%dism.exe" /Image:.\boota /Add-Driver /Driver:%P%\MY_Driver /recurse /ForceUnsigned
  9. ECHO 按任意键继续......
  10. Pause >nul
  11. CLS
  12. Echo.</P>
复制代码







3、用BC捞取D:\boota\Windows 与D:\bootb\Windows 的区别



以下8个目录需要给予访问权限,否则BC可能访问不了,也就不能列出变化之处
D:\bootx\Windows\System32\catroot
D:\bootx\Windows\System32\Drivers
D:\bootx\Windows\System32\DriverStore
D:\bootx\Windows\System32\config
X=a、b


  1. D:\boota\Windows\Inf
  2. D:\boota\Windows\System32\catroot
  3. D:\boota\Windows\System32\Drivers
  4. D:\boota\Windows\System32\DriverStore
  5. D:\boota\Windows\System32\config

  6. D:\bootb\Windows\Inf
  7. D:\bootb\Windows\System32\catroot
  8. D:\bootb\Windows\System32\Drivers
  9. D:\bootb\Windows\System32\DriverStore
  10. D:\bootb\Windows\System32\config
复制代码
主要体现在以上几个 对应目录的文件变化

   对于Windows\System32\config,我们只需关心SOFTWARE及SYSTEM两个文件的变化就够了,其余的不用理会。
  上述 Windows\System32\config之外其它几个目录只需关心D:\boota\Windows相对于D:\bootb\Windows孤立的文件就可以了,其余的不用理会。


如果D:\boota\Windows在BC对比窗口右侧,我们只需显示右侧较新及右侧孤立的文件就OK了



把变化的文件用BC复制出来,追加到你的X64PE 启动WIM内。






C、扫尾
不保存卸载.wim 文件:
  1. ECHO 正在卸载WIM镜像文件,请稍候....
  2. Echo.
  3. %PTH%dism.exe" /unmount-Wim /MountDir:".\Boota" /discard
  4. %PTH%dism.exe" /unmount-Wim /MountDir:".\bootb" /discard
复制代码






该批处理文件及SKYPE MAX版 X64及FAST_UD内的X86 PE集成的驱动文件在这里:

8PE集成OEM驱动.7z (903.48 KB, 下载次数: 481)


完整版在这里,包含上述文件外,还包括:
1、SKYPE X64 8PE和SKYPE X86 8PE的注册表文件;
2、来自HP本的一个X64 8PE BOOT.WIM及MSDN X86 8PE的BOOT.WIM;

完整版
X86+X64 8PE集成OEM驱


评分

参与人数 10无忧币 +50 收起 理由
879792799 + 5 很给力!
2011wanglei5207 + 5 很给力!
zhczf + 5 很给力!
jdcgzb + 5 很给力!
angelzgh + 5 很给力!
糊涂 + 5 赞一个!
hero8000 + 5 很给力!
clonecd + 5 很给力!
2012Taobao + 5 很给力!
freesoft00 + 5 赞一个!

查看全部评分

推荐
发表于 2013-7-19 15:17:59 | 只看该作者
学习了 感谢
回复

使用道具 举报

推荐
发表于 2013-7-19 12:42:19 | 只看该作者
经典
学习了
感谢c大
回复

使用道具 举报

4#
发表于 2013-7-19 16:58:27 | 只看该作者
好,呵呵。。。
回复

使用道具 举报

5#
 楼主| 发表于 2013-7-19 17:05:57 | 只看该作者
caocaofff 发表于 2013-7-19 16:58
好,呵呵。。。

刚弄了一个半自动的成品批处理
回复

使用道具 举报

6#
发表于 2013-7-19 18:06:23 | 只看该作者
你可以先将dism及支持文件拷贝到pe里,集成驱动后再删除。这样更简单吧?
回复

使用道具 举报

7#
发表于 2013-7-19 22:59:09 | 只看该作者
本帖最后由 ayyllll 于 2013-7-19 23:02 编辑

找一个可以整合驱动的PE进行测试,确定哪几个目录整合驱动后会变化,可用比对软件确定。楼主用的是原版的BOOT.WIM。
Windows\Inf
Windows\System32\catroot
Windows\System32\Drivers
Windows\System32\DriverStore
Windows\System32\config
假定借用可以整合驱动的PE叫A-PE,要整合的骨头版PE叫做B-PE。
1\解压A-PE的WIM的全部内到到目录X,将目录X里面INF等五个文件夹删除掉,将要整合驱动的B-PE(WIM文件事先解压到目录Z)的INF等五个文件夹复制到目录X中的相应位置。
2\复制目录X一份,改复制副本名为目录Y。
3\用DISM给目录X整合驱动。
4\将目录X中的Inf等5个文件夹复制回到目录Z的相应位置,替换原来的。
5\用对比软件对比目录X和目录Y,看看除了五个文件夹外,还有哪些文件发生了变化。有变化的文件也复制到目录Z的对应位置。
6\打包目录Z成WIM文件。
回复

使用道具 举报

8#
 楼主| 发表于 2013-7-19 23:56:11 | 只看该作者
本帖最后由 chiannet 于 2013-7-19 23:58 编辑
ayyllll 发表于 2013-7-19 22:59
找一个可以整合驱动的PE进行测试,确定哪几个目录整合驱动后会变化,可用比对软件确定。楼主用的是原版的BO ...


我去年发过一个借尸还魂法为win7 PE 集成SRS及USB 3.0驱动就是与你说的这个步骤类似。但我这几天测试了,对win8PE貌似不灵光。所以才发了这个贴。


回复

使用道具 举报

9#
发表于 2013-8-10 07:59:18 | 只看该作者
继续学习,向前辈大师致敬!
回复

使用道具 举报

10#
发表于 2013-9-3 21:59:15 | 只看该作者
好方法,认真学习中……谢谢!
回复

使用道具 举报

11#
发表于 2013-9-4 08:01:10 | 只看该作者
纯支持!
回复

使用道具 举报

12#
发表于 2013-9-5 23:20:34 | 只看该作者
C大,有几点不懂的,恳请指点:1,OEM SRS驱动通过什么途径可以找到,集中到myoemdrv中要什么样的格式。2,无垠老大的X64WIN8PE-RAID-SRS单版有我需要的磁盘驱动,有什么办法可能提取出来,谢谢!
回复

使用道具 举报

13#
发表于 2013-9-5 23:51:12 | 只看该作者
强大啊。。学习了,谢谢
回复

使用道具 举报

14#
 楼主| 发表于 2013-9-6 09:49:54 | 只看该作者
lgze 发表于 2013-9-5 23:20
C大,有几点不懂的,恳请指点:1,OEM SRS驱动通过什么途径可以找到,集中到myoemdrv中要什么样的格式。2, ...

你好,所谓OEM驱动,本来特指硬件芯片制造商提供驱动给板卡硬件制造商的驱动文件或板卡硬件制造商自己优化开发的驱动程序。本文还包括硬件芯片制造商提供的经WHQL认证的或官方正式发布的版本。
回复

使用道具 举报

15#
发表于 2013-9-6 13:32:27 | 只看该作者
一个小疑问,那些驱动可不可以进系统后再安装?
因为目前没碰到不能识别的机器,所以对驱动这块不太了解,按照以前对win8的理解,应该是可以进pe后再安装oem驱动的,不过从来没机会试过,老大有没有试过进pe安装oem驱动?
回复

使用道具 举报

16#
发表于 2013-9-6 13:46:10 | 只看该作者
C大,您太伟大了,感谢!
回复

使用道具 举报

17#
 楼主| 发表于 2013-9-6 19:53:43 | 只看该作者
fukystone 发表于 2013-9-6 13:32
一个小疑问,那些驱动可不可以进系统后再安装?
因为目前没碰到不能识别的机器,所以对驱动这块不太了解, ...

你说的对全内内置型PE完全木有问题。

问题在于,如果安装外置型PE到本地硬盘使用,在安装磁盘控制器驱动前,PECMD加载不了磁盘上的外置,会变成光棍PE。
回复

使用道具 举报

18#
发表于 2013-9-7 16:57:23 | 只看该作者
老大辛苦,学习
回复

使用道具 举报

19#
发表于 2013-9-7 17:16:26 | 只看该作者
C大做的PE真好用啊,支持了
回复

使用道具 举报

20#
发表于 2013-9-14 12:47:04 | 只看该作者
我想问下,这个方法适用于网卡驱动的集成吗?
回复

使用道具 举报

21#
 楼主| 发表于 2013-9-15 06:53:14 | 只看该作者
2012ivy 发表于 2013-9-14 12:47
我想问下,这个方法适用于网卡驱动的集成吗?

当然可以

点评

网卡的inf文件需要处理吗?  详情 回复 发表于 2013-9-15 09:32
回复

使用道具 举报

22#
发表于 2013-9-15 09:32:40 | 只看该作者
chiannet 发表于 2013-9-15 06:53
当然可以

网卡的inf文件需要处理吗?
回复

使用道具 举报

23#
 楼主| 发表于 2013-9-15 10:33:38 | 只看该作者
2012ivy 发表于 2013-9-15 09:32
网卡的inf文件需要处理吗?

不需要。只要要的是数字签名认证的for win8 驱动
回复

使用道具 举报

24#
发表于 2013-9-22 08:01:52 | 只看该作者
百度网盘的部分链接修正一下吧
回复

使用道具 举报

25#
发表于 2013-9-22 16:32:51 | 只看该作者
經典,感謝樓主分享,辛苦了
回复

使用道具 举报

26#
发表于 2013-9-22 20:30:32 | 只看该作者
其实用沙盘并且禁止删除沙盘文件会正简单,更给力哦!!
回复

使用道具 举报

27#
发表于 2013-9-23 13:11:59 | 只看该作者
本帖最后由 yfwang0798 于 2013-9-23 14:34 编辑

重复了,请删除
回复

使用道具 举报

28#
发表于 2013-9-23 13:25:10 | 只看该作者
本帖最后由 yfwang0798 于 2013-9-23 14:36 编辑

重复了,请删除
回复

使用道具 举报

29#
发表于 2013-9-23 13:39:31 | 只看该作者
本帖最后由 yfwang0798 于 2013-9-23 14:40 编辑

重复了
回复

使用道具 举报

30#
发表于 2013-9-23 14:24:59 | 只看该作者
本帖最后由 yfwang0798 于 2013-9-23 14:28 编辑

感谢楼主的分享,看了几遍,感觉第二段集成驱动前面应该有代码
例如:
02.<P>copy .\%P%\reg\SOFTWARE  .\Boota\windows\system32\config /Y >NUL 2>NUL

语句中 .\Boota\windows等文件夹如何而来,没有交代清楚。是使用imagex解压wim文件得到的吗?

17.IF "%errorlevel%"=="1" goto :X64
似乎应该修改为
IF "%errorlevel%"=="1" goto X64
没有冒号。不知是否正确,请指点
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-27 13:07

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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