firtank
驱动牛犊
驱动牛犊
  • 注册日期2005-09-11
  • 最后登录2013-09-27
  • 粉丝1
  • 关注0
  • 积分14分
  • 威望96点
  • 贡献值0点
  • 好评度29点
  • 原创分0分
  • 专家分0分
阅读:2539回复:6

关于IoAttachDevice的问题

楼主#
更多 发布于:2008-03-24 11:02
1.为什么attach的都是Device object,而不是Driver的呢?按我的理解不是Driver object不是更合理吗?
2.假如我不想把驱动插入到设备栈的顶层,而是具体指定某一层,那该怎么做?

谢谢!
diaryon
驱动牛犊
驱动牛犊
  • 注册日期2004-12-04
  • 最后登录2008-10-04
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望4点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-10-04 09:53
一个物理设备对应的设备堆栈就是有多个driver的,堆栈的每一层都有一个driver与之对应,你如果想指定你的驱动到某一个层次,你首先必须搞清楚你的设备堆栈中有哪几个驱动,比如一个usb设备就有hcd  -〉usb port driver -〉hub driver -〉function driver。
如果你要指定某个设备的下层过滤驱动,你就需要在那个设备的inf文件中添加一个.hw的段,在里面加上LowerFilterDriver的值,那么这个设备在加载功能驱动之前就会先加载你的下层过滤驱动
goodwinds
驱动牛犊
驱动牛犊
  • 注册日期2007-09-18
  • 最后登录2009-12-22
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望19点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-05-23 13:13
学习了
gutian98
禁止发言
禁止发言
  • 注册日期2003-01-12
  • 最后登录2016-12-11
  • 粉丝4
  • 关注2
  • 积分760分
  • 威望8026点
  • 贡献值1点
  • 好评度364点
  • 原创分0分
  • 专家分21分
  • 金点子奖
  • 社区居民
地板#
发布于:2008-04-14 16:28
用户被禁言,该主题自动屏蔽!
firtank
驱动牛犊
驱动牛犊
  • 注册日期2005-09-11
  • 最后登录2013-09-27
  • 粉丝1
  • 关注0
  • 积分14分
  • 威望96点
  • 贡献值0点
  • 好评度29点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-04-14 10:33
哦,多谢楼上指点,是我自己概念不清。
那反过来,一个Device能对应多个Driver吗?
如果一个Device有多个Driver,那各Driver之间的关系如何,是否也是分层的?

如果,我想实现某个设备的下层过滤驱动,该怎么办?
CnYouth
驱动牛犊
驱动牛犊
  • 注册日期2006-02-23
  • 最后登录2009-04-14
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2008-04-13 21:02
1、既然你已经知道了设备栈,你就知道一个driver可以有多个device,而IoAttachDevice是把新的设备挂接到某个设备的上层,起过滤的作用。

理解第一人问题,第二个问题就知道了。
firtank
驱动牛犊
驱动牛犊
  • 注册日期2005-09-11
  • 最后登录2013-09-27
  • 粉丝1
  • 关注0
  • 积分14分
  • 威望96点
  • 贡献值0点
  • 好评度29点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2008-03-26 12:41
路过的各路神仙,指点一二啊
游客

返回顶部