无忧启动论坛

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

WinPE 驱动程序最终解决方案

[复制链接]
31#
发表于 2007-1-5 14:46:51 | 只看该作者
回复

使用道具 举报

32#
发表于 2007-1-5 16:11:26 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

33#
发表于 2007-1-5 17:42:11 | 只看该作者
期待楼主完美的新作.....建议作成ISO格式,可以硬盘和光盘使用.
回复

使用道具 举报

34#
发表于 2007-1-5 17:46:48 | 只看该作者
很优秀的想法,相信楼主一定能够很好的实现,支持一下.
回复

使用道具 举报

35#
发表于 2007-1-5 17:55:07 | 只看该作者
很强啊!值得研究!
回复

使用道具 举报

36#
 楼主| 发表于 2007-1-6 06:14:33 | 只看该作者
已经搞定了,在这里有实际在使用的东西:http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1

没有单独的版本,有需要的可以到我的BLOG上下载代码。最终的思路是:

枚举硬件 ID,遍历 INF 内容,使用模糊匹配的方法,遇到符合要求的 INF,就解压缩他后面的所有文件,直到遇到下一个 INF 为止。

因为使用的是自定的匹配方法,所以速度是非常快的。

解压缩提取驱动后,我没有做安装动作了,因为我认为驱动安装交给网络配置程序吧,这样启动速度更快些。
回复

使用道具 举报

37#
发表于 2007-1-6 13:53:53 | 只看该作者
原帖由 Yonsm 于 2007-1-5 12:25 AM 发表
不知道 PCI Express 是以什么开头的,不会是 PCIE 吧?总之暂时没有考虑这么多。


又来学习了,本人没有 PCI Express 之类的设备。下面是某ATI显卡的INF文件其中一行。其中的 PCI-E Edition 是不是 PCI Express ,它的设备类型是不是仍然用传统的 PCI 呢?(为了兼容,仍然用传统的PCI)。
"All-in-Wonder 2006 PCI-E Edition"=ati2mtag_RV515,PCI\VEN_1002&DEV_7146&SUBSYS_03221002
回复

使用道具 举报

38#
发表于 2007-1-6 13:56:09 | 只看该作者
原帖由 Yonsm 于 2007-1-6 06:14 AM 发表
已经搞定了,在这里有实际在使用的东西:http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1

没有单独的版本,有需要的可以到我的BLOG上下载代码。最终的思路是:

枚举硬件 ID,遍历 INF 内 ...


又学了不少,谢谢。
本人打算做一个单独的版本,可以通过界面或命令行参数选择硬件,如网卡、显卡和声卡三种。
但水平有限,不知最后如何。

[ 本帖最后由 lxl1638 于 2007-1-6 02:00 PM 编辑 ]
回复

使用道具 举报

39#
发表于 2007-1-6 14:16:38 | 只看该作者
老九,加油
回复

使用道具 举报

40#
发表于 2007-1-6 14:19:25 | 只看该作者
牛啊。。。 有单独版就好咯
回复

使用道具 举报

41#
 楼主| 发表于 2007-1-6 14:22:47 | 只看该作者
原帖由 lxl1638 于 2007-1-6 01:53 PM 发表


又来学习了,本人没有 PCI Express 之类的设备。下面是某ATI显卡的INF文件其中一行。其中的 PCI-E Edition 是不是 PCI Express ,它的设备类型是不是仍然用传统的 PCI 呢?(为了兼容,仍然用传统的PCI)。


下面是代码片断,看其中的 "PCI" 注释掉了,就是说会枚举所有的美配置过的系统设备,通吃。但 ACPI 设备除外。


  1.         // Lookup device
  2.         HDEVINFO hDev = SetupDiGetClassDevs(NULL, NULL[color=Red]/*TEXT("PCI")*/[/color], 0, DIGCF_ALLCLASSES);
  3.         if (hDev == INVALID_HANDLE_VALUE)
  4.         {
  5.                 return E_FAIL;
  6.         }

  7.         // Build SPDRP_HARDWAREID list
  8.         CHAR szDevID[MAX_STR];
  9.         PSTR p = szDevID;
  10.         SP_DEVINFO_DATA sdDev = {sizeof(SP_DEVINFO_DATA)};
  11.         for (UINT i = 0; ((p - szDevID) < sizeof(szDevID)) && SetupDiEnumDeviceInfo(hDev, i, &sdDev); i++)
  12.         {
  13.                 // Exclude configured device
  14.                 ULONG uProblem = 0;
  15.                 ULONG uStatus = DN_HAS_PROBLEM;
  16.                 CM_Get_DevNode_Status(&uStatus, &uProblem, sdDev.DevInst, 0);
  17.                 if (uProblem != CM_PROB_NOT_CONFIGURED)
  18.                 {
  19.                         continue;
  20.                 }

  21.                 // Exclude ACPI device
  22.                 if (SetupDiGetDeviceRegistryPropertyA(hDev, &sdDev, SPDRP_HARDWAREID, NULL, (PBYTE) p, sizeof(szDevID) - (UINT) (p - szDevID), NULL) &&
  23.                         (*((PDWORD) p) != 'IPCA'))
  24.                 {
  25.                         // Trim some stuff for quick search
  26.                         for (UINT k = 0; *p; p++)
  27.                         {
  28.                                 if ((*p == '&') && (++k == 2))
  29.                                 {
  30.                                         *p = 0;
  31.                                         break;
  32.                                 }
  33.                         }
  34.                         p++;
  35.                 }
  36.         }
  37.         *p = 0;

  38.         SetupDiDestroyDeviceInfoList(hDev);
  39.         if (szDevID[0] == 0)
  40.         {
  41.                 // No device
  42.                 return ERROR_NO_MATCH;
  43.         }
复制代码
回复

使用道具 举报

42#
 楼主| 发表于 2007-1-6 14:25:25 | 只看该作者
原帖由 coolqvu 于 2007-1-6 02:19 PM 发表
牛啊。。。 有单独版就好咯


我只是提供一个想法,并且提供在我YY的 RXPE 中的一个程序经实际使用可行。你也可以到 http://www.yonsm.net/read.php?286 上下载单独的程序的,仅使用 RXPE.EXE DEVI ABC.CAB 也可以的阿。

不过据说老九会去做更通用的版本。大家可以期待。
回复

使用道具 举报

43#
发表于 2007-1-6 14:30:43 | 只看该作者
是不是在acb.cab里只要显卡或声卡的驱动,也一样可以安装成功?
回复

使用道具 举报

44#
 楼主| 发表于 2007-1-6 14:34:02 | 只看该作者
原帖由 acoa 于 2007-1-6 02:30 PM 发表
是不是在acb.cab里只要显卡或声卡的驱动,也一样可以安装成功?


是的,但我没有测试。
你也可以用建立单独的显卡包,然后在RXPE.INI 中添加一条 DEVI 命令。
如果要登录后立即安装驱动,可以在这之后马上执行 BARTPE -pnp 命令。(其实安装驱动很简单,一条 API 调用就搞定,但是按我的想法,定位系统维护的话,大多数时间启动的时候不要安装驱动,要用的时候再安装吧。启动的时候进提取驱动)
回复

使用道具 举报

45#
发表于 2007-1-6 14:46:46 | 只看该作者
原帖由 Yonsm 于 2007-1-6 02:25 PM 发表


我只是提供一个想法,并且提供在我YY的 RXPE 中的一个程序经实际使用可行。你也可以到 http://www.yonsm.net/read.php?286 上下载单独的程序的,仅使用 RXPE.EXE DEVI ABC.CAB 也可以的阿。

不过据说老九会 ...


你又知道我看的明白?
我是第一次来这个版的   我要问一下你所说是驱动包能否外置,也就是说放在其它盘上,还是要指定在同一个目录下。
回复

使用道具 举报

46#
 楼主| 发表于 2007-1-6 14:59:34 | 只看该作者
原帖由 coolqvu 于 2007-1-6 02:46 PM 发表


你又知道我看的明白?
我是第一次来这个版的   我要问一下你所说是驱动包能否外置,也就是说放在其它盘上,还是要指定在同一个目录下。


当然可以外置!指定目录即可。
回复

使用道具 举报

47#
发表于 2007-1-6 15:17:03 | 只看该作者
让winpe启动时运行rxpe.exe,应该如何设置呀?不是只须将rxpe.exe放在IMG的根目录下即可呀?
回复

使用道具 举报

48#
发表于 2007-1-6 15:40:03 | 只看该作者
顶一下
回复

使用道具 举报

49#
 楼主| 发表于 2007-1-6 16:01:27 | 只看该作者
原帖由 catchsun 于 2007-1-6 03:17 PM 发表
让winpe启动时运行rxpe.exe,应该如何设置呀?不是只须将rxpe.exe放在IMG的根目录下即可呀?


对呀,不过随便放在哪里都行,只能遥找到路径的地方。

不像PENETCFG.EXE这个东西,哇靠!bartpe.exe 不放在 System32种它就是不行!Windows目录虽也不可以,MD!
回复

使用道具 举报

50#
发表于 2007-1-6 16:08:16 | 只看该作者
Yonsm老兄,要让rxpe.exe运行,要写什么命令呀?
回复

使用道具 举报

51#
发表于 2007-1-6 16:11:27 | 只看该作者
PCI-E、PCI-X 原则上都应该是PCI设备,我提供2个PCI-E无线网卡的驱动信息文件请楼主研究一下。顺便期待一下。。。

PCIE网卡INF文件.rar

61.15 KB, 下载次数: 72, 下载积分: 无忧币 -2

PCIE网卡INF文件

回复

使用道具 举报

52#
 楼主| 发表于 2007-1-6 16:12:56 | 只看该作者
原帖由 catchsun 于 2007-1-6 04:08 PM 发表
Yonsm老兄,要让rxpe.exe运行,要写什么命令呀?

?
看说明,一看就明白了吧
回复

使用道具 举报

53#
 楼主| 发表于 2007-1-6 16:13:57 | 只看该作者
原帖由 rui 于 2007-1-6 04:11 PM 发表
PCI-E、PCI-X 原则上都应该是PCI设备,我提供2个PCI-E无线网卡的驱动信息文件请楼主研究一下。顺便期待一下。。。


不限于 pci 设备的啊,现在已经没有这个问题了。支持搜索出了 ACpI外的所有硬件驱动
回复

使用道具 举报

54#
发表于 2007-1-6 16:15:26 | 只看该作者
希望也能支持USB网卡
回复

使用道具 举报

55#
 楼主| 发表于 2007-1-6 16:18:19 | 只看该作者
原帖由 acoa 于 2007-1-6 04:15 PM 发表
希望也能支持USB网卡

上面不是刚说支持所有硬件吗?不限于网卡什么的
回复

使用道具 举报

56#
发表于 2007-1-6 16:38:50 | 只看该作者
那就太好了,说不定pcmica网卡也能用了。
回复

使用道具 举报

57#
发表于 2007-1-6 16:43:34 | 只看该作者
希望能早点出来
回复

使用道具 举报

58#
发表于 2007-1-6 16:47:58 | 只看该作者

dingging

回复

使用道具 举报

59#
发表于 2007-1-6 17:07:30 | 只看该作者
呵,已经出来了
回复

使用道具 举报

60#
发表于 2007-1-6 17:19:24 | 只看该作者
顶一下,支持。

有没有测试过了的?看一下好像没有人报告结果?

[ 本帖最后由 chenall 于 2007-1-6 05:22 PM 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-23 00:14

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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