oysx
驱动牛犊
驱动牛犊
  • 注册日期2001-06-21
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1561回复:2

请教大虾

楼主#
更多 发布于:2001-06-21 16:47
StartIo例程运行在Dispatch_Level,而CancelRoutine也是在这个级别,当StartIo运行起来以后一直到结束以前,是不是CancelRoutine无法取消该IRP?如果在StartIo中出问题,应如何取消?
leerom
驱动小牛
驱动小牛
  • 注册日期2001-06-08
  • 最后登录2010-08-31
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-06-21 17:30
可以考虑用定时器。如果设备超时将由定时器处理。这通常是用在等待中断时,如果超出了等待时间还没产生中断。将由定时器例程处理完成这个IRP,如果设备可以软件复位,你还可以在这里来次复位。
leerom
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-06-22 08:29
CancelRoutine是回调函数,当有人取消这个IRP的时候,由系统调用。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
游客

返回顶部