阅读:1151回复:3
奇怪,sfilter 中内容 和 ddk doc内容?
sfilter.c 中 SfCreateCompletion 完成历程:
if (NULL != event) { KeSetEvent(event, IO_NO_INCREMENT, FALSE); } if (Irp->PendingReturned) { IoMarkIrpPending( Irp ); } 而在ifs kit 2003文档中: Using IRP Completion Routines →→Constraints on Completion Routines下: Unless the completion routine signals an event, it must check the Irp->PendingReturned flag. If this flag is set, the completion routine must call IoMarkIrpPending to mark the IRP as pending. If a completion routine signals an event, it should not call IoMarkIrpPending 请高人解惑! |
|
沙发#
发布于:2005-01-27 15:59
是这样,多谢tooflat!
But: If a completion routine signals an event, it should not call 如果完成历程 signal event,就不应该call IoMarkIrpPending 怎磨在 CompletionRoutine() 先signal event 后又 IoMarkIrpPending( Irp ); 我的理解有问题吗? :D |
|