阅读:1953回复:4
调用deviceiocontrol读取数据,在usb驱动里的哪个地方可以看到读上来得数据?
在应用程序使用DeviceIoControl(IOCTL_BULK_READ)后,USB发送给PC的数据在驱动程序的哪个地方缓存并上传给PC,我现在应用程序收到了数据,但是我却在驱动程序里看不到。看资料里介绍好像是有一个irp->userbuffer和irp->AssociatedIrp->systembuffer,但是我在驱动程序中IoCallDriver后设置断点,观察内存中数据并不对。
大家有谁晓得,帮帮忙! |
|
沙发#
发布于:2007-04-29 13:30
这个问题不是很难吧,曾经做过的各位朋友帮忙说明一下
我主要想做个filter处理 |
|
板凳#
发布于:2007-04-30 13:38
你用IoCallDriver发送的Irp是同步还是异步的?如果是异步的,到completion routine里面去看
|
|
|
地板#
发布于:2007-05-09 17:39
to:rayyang2000
我已经找到了mdladdress->MappedSystemVa中,但是现在又有问题了,怎么设置irpStack->Parameters.DeviceIoControl.OutputBufferLength?他好像是用来设置接收数据包的长度吧还有进行bulk传输方式,数据包最大可设置为多大?2。0的协议 |
|
地下室#
发布于:2007-05-11 13:08
这个似乎是应用程序里设置然后传进驱动的吧
|
|