blue
驱动大牛
驱动大牛
  • 注册日期2001-04-25
  • 最后登录2010-10-15
  • 粉丝0
  • 关注0
  • 积分55分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
阅读:1884回复:2

驱动程序的启动顺序如何定?

楼主#
更多 发布于:2001-09-13 13:35
我做了一个驱动程序B,用它调用一个硬件驱动A,我在AddDevice例程中使用IoGetDeviceObjectPointer()连接硬件,然后发送IRP包。
现在的现象是:在系统和驱动A都已起动后,我双击驱动B的inf文件安装,一切正常;重新启动后,死机。查看SoftICE,说IoGetDeviceObjectPointer失败,Status=c000000e,表示STATUS_NO_SUCH_DEVICE,设备不存在。
不知各位高手的中间层、过滤程序如何确定是在下层驱动之后启动的?
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-09-13 13:42
保证驱动B的所属组的加载是在驱动A所属组的加载顺序之后,或者两个驱动是同一个组,但是B的TAG要比A的要大
blue
驱动大牛
驱动大牛
  • 注册日期2001-04-25
  • 最后登录2010-10-15
  • 粉丝0
  • 关注0
  • 积分55分
  • 威望12点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-09-13 14:04
你所说的组是不是指inf文件中的Class,?
Tag又是在哪里定义的呢?是不是下面描述的:
[DDInstall.Services]
AddService=ServiceName,[flags],service-install-section
这是的flags是不是就是Tag?

我又怎样确定组与组之间的加载顺序呢?
游客

返回顶部