imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1060回复:1

请问readfile和DeviceIOControl是否有冲突的问题

楼主#
更多 发布于:2004-09-03 15:28
  在USB驱动中定义了Bulk In和控制端点,现在在应用程序中调用
ReadFile函数来通过Bulk端点读取设备数据,读取数量很大为81920个,假设在读取的过程中,想再通过控制端点发送停止读的命令来中止读数,调用DeviceIOControl来写命令,此时读数还在进行,也即ReadFile函数还没有结束,结果发现DeviceIOControl返回失败,数据传输没有停止,
请问高手,是不是在驱动中出现了冲突,或者是BULK IN IRP没有完成,而不能收到停止命令的IRP呢,怎样实现这种情况,谢谢指点!
archill
驱动牛犊
驱动牛犊
  • 注册日期2004-07-28
  • 最后登录2004-09-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-09-03 15:55
DeviceIoControl能直接实现读写CTL吗?

就如DS自动生成的*_IOCTL_**()函数代码如下:

if (!DeviceIoControl(hDevice,
USB_IOCTL_LED,
bufInput,
IOCTL_INBUF_SIZE,
bufOutput,
IOCTL_OUTBUF_SIZE,
&nOutput,
NULL)
  )

这能ReadFile()一般读数据吗?

如果要实现特定的控制是否要在相应驱动程序的_IOCTL_*_Handler(KIrp I)下作对应

谢谢了



游客

返回顶部