moch
驱动牛犊
驱动牛犊
  • 注册日期2001-12-29
  • 最后登录2002-01-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1034回复:1

各位高手中的高手,大侠中的大侠,请为迷途中的羔羊指点迷径,小生已被折磨得快没气了

楼主#
更多 发布于:2002-01-18 09:45
当插入第二个USB设备时(跟第一个USB设备是同一种设备),系统只发了三个PNP消息:
PNP_MN_QUERY_CAPABILITIES
PNP_MN_QUERY_ID
PNP_MN_QUERY_DEVICE_RELATIONS BusRelations

我没法操纵第二个插入的设备

我的理解是当第一个设备插入时,构造一个fdo操纵这个设备;当第二个设备插入时,系统应该再次调有我的AddDevice回调函数来创建第二个fdo操纵这个设备。可是,系统只是发了上面三个PNP消息,我怎样在驱动里识别第二个插入的设备以及操纵它呢?

是不是不用创建第二个fdo,只是在用户态程序调用CreateFile时,驱动用UsbSelectConfiguration来选择是第一个还是第二个USB设备呢?

我用的是WDM开发

各位高手中的高手,大侠中的大侠,请为迷途中的羔羊指点迷径,小生已被折磨得快没气了
做不到不是想不到?
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-01-18 10:59
那么你应该在PNP例程里创建一个操纵第二个USB设备的设备对象,当插上第二个USB设备的时候是不会调用ADDDEVICE例程的
游客

返回顶部