ihhv2004
驱动牛犊
驱动牛犊
  • 注册日期2004-11-30
  • 最后登录2010-10-28
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望26点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
阅读:1618回复:1

请问:怎样才能在虚拟总线上枚举设备,弹出用户安装界面?

楼主#
更多 发布于:2005-06-07 19:14
我刚学驱动编程不久,仿照toaster写了一个总线驱动,可是枚举了pdo后,却不能弹出用户安装程序。我看DDK上说,bus driver调用IoInvaildateRelation后,PNP管理器发送一系列的IRP给bus driver,如query id,query capbilities等等,我用softice跟踪了一下toaster,确实也是如此。用softice跟踪我的driver,PNP管理器只发送query id给我的驱动,没有发送别的irp。用webcrazy大虾的irpmon看了一下,果然query id之后就没有下文了。请问高手这是怎么一回事?难道PNP管理器不是自己发出这些irp的吗?还有别的什么条件吗?看toaster的代码似乎看不出有什么别的要求啊。要怎样做才能弹出用户安装界面啊?


 
acidfish
驱动小牛
驱动小牛
  • 注册日期2002-05-20
  • 最后登录2009-11-11
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望3点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-06-07 23:20
仔细分析toaster的bus部分的代码。
你的bus driver调用IoInvaildateRelation以后,PnP manager会向你的bus driver发送Query_Device_relation的请求。这时候就应该把刚才创建的PDOs做成一个列表传给系统。系统就会知道你的bus driver创建了新的pdo
其他的操作仔细的看toaster bus部分。没有太多困难的。
游客

返回顶部