阅读:1044回复:0
求教关于USB驱动读返回的问题!
各位大虾,请帮忙看一问题如何解决!
我的USB驱动的对应于IRP_MJ_READ的USB的读程序是这样写的: UsbBuildInterruptOrBulkTransferRequest(。。。); 。。 KeInitializeEvent( &event, NotificationEvent, FALSE); IoSetCompletionRoutine(。。。); ntStatus = IoCallDriver( deviceExtension->TopOfStackDeviceObject, Irp); if( ntStatus==STATUS_PENDING) { KeWaitForSingleObject( &event, Executive, KernelMode, FALSE, NULL); ntStatus = Irp->IoStatus.Status; } 这样我的程序在进行读操作时就只有等待结束后才会返回,但如果我 想让ReadFile函数立即返回,怎么办,对于cancel掉这个Pending 的IRP没有成功过。 谢谢,请多多指教。不胜感激。 |
|