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);
} 展开
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);
} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询