阅读:1095回复:1
USB通讯问题,着急啊
我用DDK做了一个USB驱动,已经能正常通讯了,但是在循环写Pipe1端口,写几次驱动就不响应了,调试发现停在status = KeWaitForSingleObject( &event, Executive, KernelMode, FALSE, NULL );,以下时通讯程序,这会是什么原因呢????
KeInitializeEvent(&event, NotificationEvent, FALSE); Irp = IoBuildDeviceIoControlRequest( IoControlCode, dx->NextStackDevice, NULL, 0, NULL, 0, TRUE, &event, &IoStatus); NextIrpStack = IoGetNextIrpStackLocation(Irp); NextIrpStack->Parameters.Others.Argument1 = UrbEtc; status = IoCallDriver( dx->NextStackDevice, Irp); if (status == STATUS_PENDING) { status = KeWaitForSingleObject( &event, Executive, KernelMode, FALSE, NULL ); if( status != STATUS_SUCCESS ) { TRACE1( "KeWaitForSingleObject faild :0x%x" , status ); } status = IoStatus.Status; } |
|
沙发#
发布于:2009-04-09 22:08
自己顶
|
|