libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:823回复:1

关于取消IRP

楼主#
更多 发布于:2003-08-05 17:03
这是DS的帮助文件里对KIrp的类函数TestAndSetCancelRoutine的一段描述
KIrp::TestAndSetCancelRoutine
BOOLEAN TestAndSetCancelRoutine(
   PDRIVER_CANCEL OriginalCancelRoutine,
   PDRIVER_CANCEL NewCancelRoutine,
   PIRP& CurrentIrp
);

If the IRP was previously in a non-cancelable state (OriginalCancelRoutine==NULL), and the IRP\'s cancel bit is set, then this function returns FALSE, and the caller is responsible for completing the IRP with STATUS_CANCELLED.

这句话是说,IRP以前是处于不可被取消的状态(原始取消例程是空),现在设置了IRP的取消位,往下,我理解不了,怎么就返回状态排队呢?
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
libin2309
驱动大牛
驱动大牛
  • 注册日期2002-11-20
  • 最后登录2005-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-08-06 21:43
谁能详细说明这个??
我是一只小小鸟,永远也飞也飞不高,但我永远在飞!
游客

返回顶部