基于MSCOMM控件的串口软件开发中如何解决错误“8020 Error reading comm device”

ipad_li 2013-04-12 09:17:48
最近在做串口软件开发,是参考的两本书做的,一本是唐强平/张怡编写的《Visual C++软件开发实训》,另一本是龚建伟/熊光明编写的《Visual C++/Turbo C 串口通信编程实践》,在做基于对话框的MSCOMM控件的串口软件开发时,遇到了这样的一个问题:在读串口时,并没有读取到真正的数据,也就是说在接收显示区上没有任何数据显示,但是也没提示有什么错误,于是我在读串口的操作上设了一个断点,就是在语句myVar.Attach(m_ctrlComm.get_input())这里设置一个断点,当然在Visual studio 2010上的函数是get_input(),在Visual studio 6.0上市GetInput(),只是形式上稍有不同。然后再通过发送数据和接收数据来观察动静,我进入函数get_input()内部去看看发生了什么,然后发现在TRY.....CATCH_CALL(e)中得到的e的内容是"Error reading comm device",然后直接就把缓冲区给释放了,根本没有读取数据,这个8020的错误该如何解决?求各位大神人物给予指导,帮帮忙吧!!!!
...全文
802 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjy1983 2013-05-11
  • 打赏
  • 举报
回复
不知道你是否解决了问题,我也碰到了这个错误,我认为应该是MSCOMM控件的问题,我在XP下测试没出现过这个错误,现在的系统是Win7的就出错了。还有,我使用API串口编程或者.net的新串口控件SerialPort就能正常工作。
ipad_li 2013-04-12
  • 打赏
  • 举报
回复
请各位路过的大神们给点指导啊!!很难搞的一个问题!!

2,640

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧