MFC中关于mscomm控件串口接收的问题?

我的MFC工程是单文档的,VIEW是基于CFORM类的,相当于也是个对话框,然后我在主对话框下新建一个对话框,在新的对话框中实现串口数据的收发。我是用串口调试助手给界面发... 我的MFC工程是单文档的,VIEW是基于CFORM类的,相当于也是个对话框,然后我在主对话框下新建一个对话框,在新的对话框中实现串口数据的收发。我是用串口调试助手给界面发数据的,在调试助手开着的时候,对话框中的EDIT控件不会显示数据,在关闭串口调试助手后,发送过的数据才会被显示。我debug下,发现在开着串口调试助手的时候,界面在接收数据时不会进入OnMscomm1()中,要关闭串口调试助手后,才会进入函数,求大神解答。
BEGIN_EVENTSINK_MAP(CCOMSET, CDialog)
//{{AFX_EVENTSINK_MAP(CCOMSET)
ON_EVENT(CCOMSET, IDC_MSCOMM1, 1 /* OnComm */, OnOnCommMscomm1, VTS_NONE)
//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()
void CCOMSET::OnOnCommMscomm1()
{
// TODO: Add your control notification handler code here
VARIANT revvt;
revvt.vt=VT_BSTR;
revvt=m_com.GetInput();
CString str=revvt.bstrVal;
m_comrecv=m_comrecv+str;
UpdateData(FALSE);

}
展开
 我来答
liff0710
2012-11-18 · 超过18用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:44.1万
展开全部
串口是独占模式的,如果一个串口(比如COM1)被一个软件打开,其它的软件就不能再打开该端口。
如果你希望在你的软件与串口通信时,用其它的软件监控查看串口的数据,应该用AccessPort . 这个软件比较特殊,是不占用端口的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式