rainysky1224
驱动牛犊
驱动牛犊
  • 注册日期2003-02-16
  • 最后登录2004-10-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1468回复:3

应用程序与U盘通信的难题。请大家指教

楼主#
更多 发布于:2003-03-07 19:38
我参考win2kDDK中的一些源代码。成功列举出了连接在
主机上的所有USB设备,其中也包括U盘。得到了设备路径,运用
DeviceIoControl函数和相关控制码,得到了设备描述符,接口描述符,
端点描述符等。但在读写数据上,遇到了问题。
    据我所知。读写数据需要一个CDB数组,里面填写一些相关设置
数据,CDB数组包括在SCSI_PASS_THROUGH结构体中,而与这个结构
体配套的控制码就是IOCTL_SCSI_PASS_THROUGH(DeviceIoControl函数
的第二个参数),现在我的程序中,使用DeviceIoControl和上述控制码
却总也不能成功返回。初步怀疑是句柄的问题(DeviceIoControl函数
的第一个参数)。在hf=CreateFile(string,.......)中,若string等于
“\\\\\\\\.\\\\f:”或者\"\\\\\\\\.\\\\h:\"(我的电脑上硬盘到F盘,H盘为光驱),
由此得到的句柄hf在DeviceIocontrol中,配合SCSI系列控制码都能成
功返回,而当我把string设置为\"\\\\\\\\.\\\\i:\"(移动闪存盘的盘符)时,
用该函数,所有的SCSI控制码都不能成功返回来,说什么不支持网络
查询。不知是怎么回事。

最新喜欢:

wdy9927wdy992...
just do it
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-03-09 00:47
看看aspi是否可以用。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
rainysky1224
驱动牛犊
驱动牛犊
  • 注册日期2003-02-16
  • 最后登录2004-10-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-03-09 09:23
大虾,具体解释一下aspi是什么冬冬  谢谢
just do it
rainysky1224
驱动牛犊
驱动牛犊
  • 注册日期2003-02-16
  • 最后登录2004-10-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-03-10 21:13
斑竹,别说话说一半阿。
指点一下啦
just do it
游客

返回顶部