阅读:2537回复:6
关于IoAttachDevice的问题
1.为什么attach的都是Device object,而不是Driver的呢?按我的理解不是Driver object不是更合理吗?
2.假如我不想把驱动插入到设备栈的顶层,而是具体指定某一层,那该怎么做? 谢谢! |
|
沙发#
发布于:2008-03-26 12:41
路过的各路神仙,指点一二啊
|
|
板凳#
发布于:2008-04-13 21:02
1、既然你已经知道了设备栈,你就知道一个driver可以有多个device,而IoAttachDevice是把新的设备挂接到某个设备的上层,起过滤的作用。
理解第一人问题,第二个问题就知道了。 |
|
地板#
发布于:2008-04-14 10:33
哦,多谢楼上指点,是我自己概念不清。
那反过来,一个Device能对应多个Driver吗? 如果一个Device有多个Driver,那各Driver之间的关系如何,是否也是分层的? 如果,我想实现某个设备的下层过滤驱动,该怎么办? |
|
地下室#
发布于:2008-04-14 16:28
用户被禁言,该主题自动屏蔽! |
|
5楼#
发布于:2008-05-23 13:13
学习了
|
|
6楼#
发布于:2008-10-04 09:53
一个物理设备对应的设备堆栈就是有多个driver的,堆栈的每一层都有一个driver与之对应,你如果想指定你的驱动到某一个层次,你首先必须搞清楚你的设备堆栈中有哪几个驱动,比如一个usb设备就有hcd -〉usb port driver -〉hub driver -〉function driver。
如果你要指定某个设备的下层过滤驱动,你就需要在那个设备的inf文件中添加一个.hw的段,在里面加上LowerFilterDriver的值,那么这个设备在加载功能驱动之前就会先加载你的下层过滤驱动 |
|