无忧启动论坛

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

从WinPE中提取出来的驱动程序为什么不能直接用于WinXP?

[复制链接]
跳转到指定楼层
1#
发表于 2008-3-17 01:32:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我是新手,刚用GetPeDriver1.2从WinPE中提取了显卡的驱动程序,是1个.inf文件和其他几个.dll和.sys文件。启动WinXP后,想安装显卡的驱动程序,结果WinXP在安装此驱动到一半的时候,总是提示出现错误,安装失败。请各位指点:如何才能使用WinPE中提取了显卡的驱动程序?多谢了。

我的显卡945_g35.inf的内容如下(最后一部分被删掉以满足字数要求):
[Version]
Signature="$WINDOWS NT$"
Provider=%Intel%
ClassGUID={4D36E968-E325-11CE-BFC1-08002BE10318}
Class=Display
CatalogFile=igfxnt5.cat
DriverVer=08/07/2007,6.14.10.4859
[DestinationDirs]
DefaultDestDir=11
ialm.Miniport=12
ialm.Display=11
Copp.Copy=11
DXKL.Copy=11
CUI.Copy=11
OpenGL.Copy.Legacy=11
OpenGL.Copy.Gen4=11
[Manufacturer]
%Intel%=Intel.Mfg
[Intel.Mfg]
%iLPGD0%=i945G0,PCI\VEN_8086&DEV_2772
%iLPGD1%=i945G1,PCI\VEN_8086&DEV_2776
%iCLGD0%=i945GM0,PCI\VEN_8086&DEV_27A2
%iCLGD1%=i945GM1,PCI\VEN_8086&DEV_27A6
%iCLGE0%=i945GM0,PCI\VEN_8086&DEV_27AE
%iBWGX0%=iBWG0,PCI\VEN_8086&DEV_2982
%iBWGX1%=iBWG1,PCI\VEN_8086&DEV_2983
%iBWGQ0%=iBWG0,PCI\VEN_8086&DEV_2992
%iBWGQ1%=iBWG1,PCI\VEN_8086&DEV_2993
%iBWGC0%=iBWG0,PCI\VEN_8086&DEV_29A2
%iBWGC1%=iBWG1,PCI\VEN_8086&DEV_29A3
2#
 楼主| 发表于 2008-3-18 23:59:30 | 只看该作者
请大家指点啊:要改哪里才能将提取出来的驱动程序用于Windows XP?
回复

使用道具 举报

3#
发表于 2008-3-19 09:25:12 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

4#
发表于 2008-3-19 10:31:30 | 只看该作者
帖子 39
注册 2004-9-9

不简单

评分

参与人数 1无忧币 -100 收起 理由
打狗协会理事 -100 恶意灌水

查看全部评分

回复

使用道具 举报

5#
 楼主| 发表于 2008-3-19 11:17:00 | 只看该作者
原帖由 nn2nn 于 2008-3-19 09:25 AM 发表
GetPeDriver
有说明,为什么不看看?


以下是说明,没有看到如何修改啊?请继续指点。

GetPeDriver说明:

   先说点题外话:用过不少PE,虽然内置了很多驱动,但对于我的老机的两个驱动都支持不好。我的ATI显卡使用内置的ATI驱动更改分辨率无效(看似成功了,但感觉刷新率仍是默认60,显烁得历害),Yamaha724声卡就根本没有内置驱动。后来用驱动备份工具将备份的驱动安装时发现目前的PE释放驱动文件时考虑的不全面,位置不同无法开启设备。

   注意,本软件仅列出第三方驱动的项目,系统自身带有的文件就不列出来了。

   另外虽然已经有了不少的驱动备份工具,但备份下来的安装包往往需要手动修改才能在PE中使用,于是就有了GetPeDriver。

   首先在您正常的系统中使用GetPeDriver,在软件列出的设备中选择您想备份的驱动,然后双击[分析INF](上述操作也可以通过双击显示的设备来完成)。

   双击[分析INF]后会转入INF优化页,默认已经将不是设备驱动所必须的文件移到了[移走列表]中。当然,如果你认为还有某些文件可以不要,也可以手动添加到移除列表。

   INF文件查看的左列表会列出驱动INF的各段名,双击会定位到指定的段。这样也可以手动编辑一下驱动INF文件。要注意的是,如果你不懂INF文件格式就不要动这里了,否则在使用[优化备份]功能时会保存你编辑错误的驱动INF文件。

   [完整备份]功能会忽略掉移除列表及编辑过的INF文件,而直接采用原始文件打包保存。[优化备份]会根所保存列表中的文件来处理INF文件中对应的描述位置,这样就可以得到精简的驱动文件。

   打包后的驱动文件可以通过《设备管理》-《更新驱动程序》来安装。

   驱动文件打包格式采用CAB压缩,[优化备份]的CAB中会多出一个Infsetup.bat,这个文件是为PE中动态安装驱动添加的。当PE中需要动态载入您的驱动时,您只需直接将CAB解压到winpe\system32下,然后调用Infsetup.bat即可。Infsetup.bat会将释放的驱动文件移到它本身的目录中。(也就是就说,不用释放到B盘后再拷贝安装)

   至于如何在PE中调用本软件所备份的驱动包就不要问我了,多在http://bbs.wuyou.net的PE区翻翻贴子,分析一下通用驱动是如何载入的可以了。
回复

使用道具 举报

6#
发表于 2008-3-19 11:33:24 | 只看该作者
[SourceDisksNames]
[SourceDisksFiles]
这两段的内容呢?

有很多驱动程序是通过,安装、解压等方式把.sys类的文件放到system32\drivers(也就DestinationDirs的12),dll类的放system32(就是11),inf类的放inf(就是17)等。这时候它一般就不提供[SourceDisksNames]和或[SourceDisksFiles],于是你只能手工添加这部分内容,或者把文件放到规定位置上。

这也是很多智能备份的驱动无法正常使用的主要原因,其实手工拷贝文件,然后再驱动就没问题了。
其实很多从xp备份出来的驱动,也是无法直接用到xp里面,呵呵

[ 本帖最后由 netwinxp 于 2008-3-19 11:56 AM 编辑 ]
回复

使用道具 举报

7#
发表于 2008-3-19 11:51:57 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

8#
发表于 2008-3-19 13:52:17 | 只看该作者

回复 #2 tigerhuang 的帖子

备份、安装显声网驱动可参考
http://bbs.wuyou.net/redirect.ph ... 428&ptid=121850
的#5楼
回复

使用道具 举报

9#
 楼主| 发表于 2008-3-20 08:32:21 | 只看该作者
原帖由 nn2nn 于 2008-3-19 11:51 AM 发表
没说要修改,说要用原来的INF。

这是个新硬盘,没有原来的inf文件,想从WinPE上得到驱动程序用于WinXP,就是不知道如何修改inf文件。
回复

使用道具 举报

10#
 楼主| 发表于 2008-3-20 08:34:57 | 只看该作者
原帖由 netwinxp 于 2008-3-19 11:33 AM 发表
[SourceDisksNames]
[SourceDisksFiles]
这两段的内容呢?

有很多驱动程序是通过,安装、解压等方式把.sys类的文件放到system32\drivers(也就DestinationDirs的12),dll类的放system32(就是11),inf类的放 ...


多谢指点,两段内容如下,请问如何进行修改?
[SourceDisksNames.x86]
1=%DiskId%,,,""
[SourceDisksFiles]
igxpmp32.sys=1
igxpco32.dll=1
igxprd32.dll=1
igxpgd32.dll=1
igxpdv32.dll=1
igxpdx32.dll=1
iglicd32.dll=1
igldev32.dll=1
ig4icd32.dll=1
ig4dev32.dll=1
igxpxk32.vp=1
igxpxs32.vp=1
igfxress.dll=1
igfxrenu.lrc=1
igfxrara.lrc=1
igfxrchs.lrc=1
igfxrcht.lrc=1
igfxrdan.lrc=1
igfxrdeu.lrc=1
igfxresp.lrc=1
igfxrfin.lrc=1
igfxrfra.lrc=1
igfxrheb.lrc=1
igfxrita.lrc=1
igfxrjpn.lrc=1
igfxrkor.lrc=1
igfxrnld.lrc=1
igfxrnor.lrc=1
igfxrplk.lrc=1
igfxrptb.lrc=1
igfxrptg.lrc=1
igfxrrus.lrc=1
igfxrsky.lrc=1
igfxrslv.lrc=1
igfxrsve.lrc=1
igfxrtha.lrc=1
igfxrcsy.lrc=1
igfxrell.lrc=1
igfxrhun.lrc=1
igfxrtrk.lrc=1
hccutils.dll=1
igfxsrvc.dll=1
igfxsrvc.exe=1
igfxpph.dll=1
igfxcpl.cpl=1
igfxcfg.exe=1
igfxdgps.dll=1
igfxdev.dll=1
igfxdo.dll=1
igfxtray.exe=1
igfxzoom.exe=1
hkcmd.exe=1
oemdspif.dll=1
igfxext.exe=1
igfxexps.dll=1
igfxpers.exe=1
igmedkrn.dll=1
igmedcompkrn.dll=1
回复

使用道具 举报

11#
发表于 2008-3-20 09:23:30 | 只看该作者
把CatalogFile=igfxnt5.cat删掉
还有那些没提取的文件对应的[SourceDisksFiles]项也删掉看看
回复

使用道具 举报

12#
发表于 2008-3-20 09:30:13 | 只看该作者
这是我改过的945_Q33驱动(去掉OPENGL),你可以参考看看。

945_Q33.part01.rar

390.63 KB, 下载次数: 66, 下载积分: 无忧币 -2

1

945_Q33.part02.rar

390.63 KB, 下载次数: 85, 下载积分: 无忧币 -2

2

945_Q33.part03.rar

390.63 KB, 下载次数: 74, 下载积分: 无忧币 -2

3

945_Q33.part04.rar

254 KB, 下载次数: 56, 下载积分: 无忧币 -2

4

回复

使用道具 举报

13#
 楼主| 发表于 2008-3-20 22:13:06 | 只看该作者
原帖由 netwinxp 于 2008-3-20 09:30 AM 发表
这是我改过的945_Q33驱动(去掉OPENGL),你可以参考看看。

多谢你的指点,我这两天要加班,之后才能再试。

这一段好理解,
把CatalogFile=igfxnt5.cat删掉
还有那些没提取的文件对应的[SourceDisksFiles]项也删掉看看

但为什么要去掉OPENGL呢?我想掌握方法,以后遇到同样的问题也可以自己处理了。

再次感谢!
回复

使用道具 举报

14#
发表于 2008-3-20 22:26:43 | 只看该作者
原帖由 陌上风 于 2008-3-19 10:31 AM 发表
帖子 39
注册 2004-9-9

不简单

恶意灌水,-100分。
回复

使用道具 举报

15#
发表于 2008-3-20 23:27:16 | 只看该作者
原帖由 打狗协会理事 于 2008-3-20 10:26 PM 发表

恶意灌水,-100分。

你发的这回复也是与我的没什么两样,也属于恶意灌水
回复

使用道具 举报

16#
 楼主| 发表于 2008-3-21 23:26:48 | 只看该作者
原帖由 netwinxp 于 2008-3-20 09:23 AM 发表
把CatalogFile=igfxnt5.cat删掉
还有那些没提取的文件对应的[SourceDisksFiles]项也删掉看看

按照你的提示,把CatalogFile=igfxnt5.cat删掉,还有那些没提取的文件对应的[SourceDisksFiles]项也删掉后,我的inf文件还是无法在WinXP下使用,你的inf文件则可以。

我在WinPE下提取出来的inf大小是52k,你的只有14k,能否告知修改inf文件的原理以及为什么要删除OpenGL,多谢!
回复

使用道具 举报

17#
发表于 2008-3-22 00:14:13 | 只看该作者
我是从xp驱动程序提取的,为了用在PE上减少体积,所以精简了OPENGL和其他工具,至于如何精减,需要了解inf的原理,顺着inf文件的思路往下看,对于直接从xp提取的驱动,有些文件他没有提取或者inf没有对应的项,则自己需要补上,毕竟程序是死的。原来PE里面的驱动程序其实是直接对下载的驱动程序里面的文件进行精简,然而却没有对inf进行修改,用在pe也许还行,用在xp上就很难保证没问题了。

[ 本帖最后由 netwinxp 于 2008-3-22 12:41 AM 编辑 ]
回复

使用道具 举报

18#
发表于 2008-3-22 06:45:14 | 只看该作者
那我跟你说说吧...
我也不知道怎么说了呵呵...
今天看到那篇文章看到什么32位还有什么的...
你自己去看看吧...
回复

使用道具 举报

19#
发表于 2008-3-22 09:09:21 | 只看该作者
有那么神秘吗?其实只不过是PE的驱动只保留mini和disp两个模块,却没有相应更改.inf造成的。

[ 本帖最后由 netwinxp 于 2008-3-22 10:00 AM 编辑 ]
回复

使用道具 举报

20#
 楼主| 发表于 2008-3-22 11:04:29 | 只看该作者
原帖由 netwinxp 于 2008-3-22 12:14 AM 发表
我是从xp驱动程序提取的,为了用在PE上减少体积,所以精简了OPENGL和其他工具,至于如何精减,需要了解inf的原理,顺着inf文件的思路往下看,对于直接从xp提取的驱动,有些文件他没有提取或者inf没有对应的项, ...

看来真要从PE上提取驱动程序直接用于WinXP还真不容易,希望哪位大侠能解决这个问题。
回复

使用道具 举报

21#
发表于 2008-3-22 12:02:56 | 只看该作者
不是PE的问题,是原来的PE驱动程序有问题(偷懒没有修改inf)。我那驱动程序在PE、XP上都可以用。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-2-28 12:08

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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