阅读:2098回复:15
如何控制驱动的安装顺序
我有两个驱动A、B,没有任何关系,其中一个(A)提供了一个API,另一个(B)调用它,我必须保证提供API的A先安装,请问:
(1)用安装程序安装时,如何控制安装过程,也就是说等A完全安装之后,再开始安装B? (2)机器重启动后,如何控制,也就是说系统如何控制顺序的? |
|
最新喜欢:![]() |
沙发#
发布于:2002-12-17 08:50
可以建立驱动程序之间明确的依赖关系。在NT中可以控制REGISTRY的项来实现。WDM中可参考过滤驱动的INF文件。
|
|
|
板凳#
发布于:2002-12-17 12:27
过滤驱动INF中的
loadordergroup项指向的是什么东东? |
|
地板#
发布于:2002-12-17 13:36
过滤驱动INF中的 地方是找对了。 Boot-start drivers can use INF LoadOrderGroup entries to order their loading. (Boot-start drivers are loaded before most of the devices are configured so their load order cannot be determined by device hierarchy.) The operating system ignores INF Dependencies entries for boot-start drivers. 去看看DDK HELP中: Specifying Driver Load Order |
|
|
地下室#
发布于:2002-12-17 22:57
DDK的那段指示看过了,对我没有用,我的两个驱动是是WDM驱动,并且是同级别的,就是START TYPE 为3,我希望控制它们的安装顺序,loadordergroup好象行,但它指向一个东西我不明白,在注册表中也可以指定,但指向grouporderlist项下的某一项,这grouporderlist项下的东西都是二进数,代表是们什么意思?如何产生的?我却不清楚,特请指点。
|
|
5楼#
发布于:2002-12-18 09:06
grouporderlist是控制用一组内的驱动的装入顺序,我只有NT的详细说明。我可以PM给你。
|
|
|
6楼#
发布于:2002-12-18 09:25
已PM,请查收。
|
|
|
7楼#
发布于:2002-12-20 10:52
什么是PM?到哪接受?
你要愿意倒就倒吧。 |
|
8楼#
发布于:2002-12-20 11:15
什么是PM?到哪接受? 就是发到你在此站上的收件箱。 |
|
|
9楼#
发布于:2002-12-20 11:18
你不会没用过吧。
|
|
|
10楼#
发布于:2002-12-20 12:25
收到了,谢谢!
还从没用过那玩意。 不过,刚才我在国外的新闻组中看到,LOADGROUP和DEPENDENCE之类对WDM好象没用。唉。 如果再没人回答这个问题,分就全给你吧。 顺便问问,你知道如何登陆到国外的新闻组上发言吗?我现在只能看,不能说。是个哑巴。 |
|
11楼#
发布于:2002-12-20 12:50
收到了,谢谢! 不会吧, DDK中Specifying Driver Load Order一节讲的就是WDM呀。你去看看。 另外一个问题我也不知道。 |
|
|
12楼#
发布于:2002-12-22 20:56
对于两个不相关的驱动Loadgroup好象不灵。
|
|
13楼#
发布于:2002-12-22 21:07
loadgroup是不是只对bootstart驱动有用,一个wdm的驱动能成为一个bootstart driver吗?
我对NT驱动不是很了解。 1)NT驱动是否能用STARTTYPE=3? 2)NT驱动是否先于WDM加载? 3)STARTTYPE=3的驱动是否晚于STARTTYPE=2的驱动加载? |
|
14楼#
发布于:2002-12-23 09:23
loadgroup是不是只对bootstart驱动有用,一个wdm的驱动能成为一个bootstart driver吗? //当然,0x3必须手动启动,而0x2则是在整个系统启动运行后由服务控制管理器装入 |
|
|
15楼#
发布于:2002-12-23 10:48
我的DRIVER是WDM的是TYPE=3,而且没有实际硬件,重起机器后,仍然会自动加载呀,没有要求我手动。
另外,我按您的方法试过了,是这样: 我试过LOADGROUP,在DRIVER A的INF的SERVICE项下加: Tag = 0x44 LoadOrderGroup = mydriver 在DRIVER B的INF的SERVICE项下加: Tag = 0x28 LoadOrderGroup = mydriver 事先修改注册表: 在GroupOrderList中加入一向: mydriver REG_BINARY 02 00 00 00 44 00 00 00 28 00 00 00 但是,根据输出的调试信息,好象不起作用,是不是我写的有问题? 我检查了注册表,相应的项都写上了,产生了TAG和GROUP项。 |
|