LRESULT CCOMRCVView::OnCommNotify(WPARAM wParam, LPARAM lParam)
{//
CCOMRCVDoc* pDoc=GetDocument(); //获取文档类
if(!m_bConnected || (wParam & EV_RXCHAR)!=EV_RXCHAR) // 是否是EV_RXCHAR事件?
{
SetEvent(m_hPostMsgEvent); // 允许发送下一个WM_COMMNOTIFY消息
return 0L;
}
rcvcomm();
SetEvent(m_hPostMsgEvent); // 允许发送下一个WM_COMMNOTIFY消息
return 0L;
}
下面的是一个rcvcomm()函数的代码
DWORD length;
COMSTAT ComStat; //COMSTAT
DWORD dwErrorFlags;
ClearCommError(m_hCom,&dwErrorFlags,&ComStat);
length=min(dwLength, ComStat.cbInQue);
ReadFile(m_hCom,buf,0*1024,&length,&m_osRead);
return length;
{//
CCOMRCVDoc* pDoc=GetDocument(); //获取文档类
if(!m_bConnected || (wParam & EV_RXCHAR)!=EV_RXCHAR) // 是否是EV_RXCHAR事件?
{
SetEvent(m_hPostMsgEvent); // 允许发送下一个WM_COMMNOTIFY消息
return 0L;
}
rcvcomm();
SetEvent(m_hPostMsgEvent); // 允许发送下一个WM_COMMNOTIFY消息
return 0L;
}
下面的是一个rcvcomm()函数的代码
DWORD length;
COMSTAT ComStat; //COMSTAT
DWORD dwErrorFlags;
ClearCommError(m_hCom,&dwErrorFlags,&ComStat);
length=min(dwLength, ComStat.cbInQue);
ReadFile(m_hCom,buf,0*1024,&length,&m_osRead);
return length;
要不然就直接写底层吧!
用N模试接收就可以了