24小时热门版块排行榜    

查看: 1570  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zhangqinfu

新虫 (初入文坛)

[交流] 【求助】用MSComm控件编程DEBUG生成的程序只能收数据不能发数据? 已有5人参与

本人初学VC++,想用MSComm控件编一个简单串口通信的程序,按照龚老师书上的例子写了一个程序,在DEBUG下生成的程序只能发数据不能收数据。收数据时弹出窗口:"0x5f5624b0"指令引用的"0x0000205d"内存。该内存不能为"read".但是在release下生成的程序可以运行。请高手指点,如何在DEBUG也能正常运行呀。串口的响应函数如下:
void CSCommTestDlg::OnComm()
{
        // TODO: Add your control notification handler code here
        VARIANT variant_inp;
        COleSafeArray safearray_inp;
        LONG len,k;
        BYTE rxdata[2048];
        CString strtemp;
        if(m_ctrlComm.GetCommEvent()==2)
        {
                variant_inp=m_ctrlComm.GetInput();
                safearray_inp=variant_inp;
                len=safearray_inp.GetOneDimSize();
                for(k=0;k                         safearray_inp.GetElement(&k,rxdata+k);
                for(k=0;k                 {
                        BYTE bt=*(char*)(rxdata+k);
                        strtemp.Format("%c",bt);
                        m_strEditRXData+=strtemp;
                }
        }
        UpdateData(FALSE);
       
}
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)

★ ★ ★
zhangqinfu(金币+1):谢谢参与
余泽成(金币+2):谢谢参与应助! 2010-07-05 10:37:06
错误不在mscomm,而在VARIANT、和COLESAFEARRAY的使用上。改成如下形式就OK了:
void CMsCommDlg::OnOnCommMscomm1()
{
        // TODO: Add your control notification handler code here
        COleVariant variant_inp;
       
        if(m_ctrlComm.GetCommEvent()==2)
        {
                variant_inp=m_ctrlComm.GetInput();
                m_strEditRXData = variant_inp.bstrVal;
        }
        UpdateData(FALSE);
}

[ Last edited by simthhuang on 2010-7-4 at 23:11 ]
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
3楼2010-07-04 22:41:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

magic7004

金虫 (职业作家)


小木虫(金币+0.5):给个红包,谢谢回帖交流
没用过MSComm,搂住自己研究下吧,看哪个函数出错了,查下函数的文档
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
2楼2010-07-02 13:01:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangqinfu

新虫 (初入文坛)

引用回帖:
Originally posted by simthhuang at 2010-07-04 22:41:05:
错误不在mscomm,而在VARIANT、和COLESAFEARRAY的使用上。改成如下形式就OK了:
void CMsCommDlg::OnOnCommMscomm1()
{
        // TODO: Add your control notification handler code here
        COleVariant variant_i ...

改成你的形式之后,显示的是r?r,这是怎么会是呀?
4楼2010-07-09 17:14:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)

可能是波特率设置不对。
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
5楼2010-07-09 21:31:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 分享一下我之前已中青C的计划书的filecode +3 布布和一二 2026-08-11 4/200 2026-08-11 15:20 by aasahr
[论文投稿] 职称评审,求友友推荐见刊最快的期刊 +3 工厂打螺丝 2026-08-08 3/150 2026-08-11 13:42 by 会议编辑
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 6/300 2026-08-11 13:19 by JACS/Angew
[基金申请] 帮忙看看fileCode +6 wwncly 2026-08-10 12/600 2026-08-11 13:01 by wwncly
[基金申请] filecode +9 documentary 2026-08-10 9/450 2026-08-11 10:08 by wk7465
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +8 家与远方 2026-08-10 13/650 2026-08-11 09:49 by 家与远方
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 关于Filecode分析方法 +3 majunge000 2026-08-10 3/150 2026-08-10 15:46 by lch2012
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
信息提示
请填处理意见