3705|4

70

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

向USB设备传输图像 请大家解决问题 [复制链接]

目的是向USB设备传输图像并显示 USB设备已经做好了 驱动正常 而且有测试程序 只要选择一个文件 点发送 最终设备就可以显示图像了
现在我要做的就是在另一个复杂点的程序中也实现这个功能 但是目前总是不成功 因为是第一次接触USB传输的领域 请大家不吝赐教 多谢了

代码如下:

                        // 加PIPE0和不加PIPE0 hFile是一样的 , 如果加PIPE1则不一样 在我先前的测试过程中,PIPE0可以单步调试过WriteFile那行函数 但是返回无效的句柄错误 。 而现在 PIPE0和PIPE1都是走到WriteFile那一行再运行 便跳出程序界面 再也回不到调试功能了 不知道是异常跳出还是什么 点关闭程序还是能关闭的 就是再也执行不到贴出的这些代码了

CString strDev = "\\\\.\\DevName\\PIPE0";
HANDLE hFile = CreateFile( strDev,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if ( INVALID_HANDLE_VALUE == hFile )
{
iErrCode = GetLastError();
}
else
{
DWORD nBytesWritten = 0;
CFile file;
file.Open("D:\\image.bin",CFile::modeRead);
int iLength = file.GetLength();
char* pData = new char[iLength];
memset(pData,0,iLength);
int iRead = file.Read(pData,iLength);

BOOL bWrite = FALSE;
try
{
                                        // 这一行就跳出调试功能了
bWrite = WriteFile( hFile, pData , iLength, &nBytesWritten, NULL);
}
catch(...)
{
AfxMessageBox("asdf");
}


if ( bWrite )
{

}
else
{
iErrCode = GetLastError();
bWrite = CloseHandle( hFile );
}

delete []pData;
}


请大家看看这是什么问题 , 并如何解决WriteFile的问题 再谢!

最新回复

帮顶  详情 回复 发表于 2009-2-23 09:21
点赞 关注

回复
举报

72

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
现在是 去掉PIPE0或者1 只写 \\\\.\\DevName
可以通过WriteFile 但是返回0 错误码是无效句柄
也在网上搜过类似的题目 但是都说的不是很清晰
有人说这已经成功了 但是我的数据并没有传到设备里 而且设备还死掉了
必须重新插一次才能重新使用
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
LZ在这也发了一帖,我在另一帖中回复了,你先试试。
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

4
 
帮顶
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

5
 
帮顶
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表