1.#define IoSetCompletionRoutine(irp,routine,completioncontext,success,error,cancel)\#{ PIO_STACK_LOCATION irpsp;\#ASSERT((success)|(error)|...
全文
回复(4) 2008-08-20 01:34 来自版块 - ABC初学者
表情
lxcsyh第一个问题,在向驱动链表的下一层驱动传递IRP之前,当前驱动有必要设置下一层IRP stack的信息。(2009-02-03 11:42)
woo东去来袭第一个问题,IoGetNextIrpStackLocation仅仅是得到下层I/o堆栈,这跟谁调用完成例程有什么关系,再说,当irp完成之后,它会一层一层向上返回,如果遇到哪一层设置有完成例程,就在哪一层执行完成例程呗 第二个问题,当你本层驱动不需要对IRP执行任何操作的时候(改...(2009-01-31 13:06)
better0332对于第二个问题,真如你所说的,下层驱动接收到就是要堆栈单元A的数据,因为堆栈单元A的数据就是你过滤之后的,显然是下层需要的!(2008-08-24 00:11)
better0332我也想不通,居然跟我想的问题一样,帮你顶一下! 我是这样认为的: 因为必须在下层设备IO成功后,才会调用本层设备的完成例程,所以设置在下层设备栈中(2008-08-23 22:02)

返回顶部