读书人

MFC MSComm控件转CserialPort类解决办

发布时间: 2012-03-09 16:54:58 作者: rapoo

MFC MSComm控件转CserialPort类
以前用CMScomm控件写的串口通讯程序,现在打算用用CSerial类实现以下,但是有些问题解决不了,请教高人指点。

代码如下:

C/C++ code
CMSComm m_comm;CString strTotal;void Crs232_JitterSERDlg::onCommMscomm1(){   CByteArray cBytArrayOnComm;   COleVariant varoutOnComm;   int comEvent=m_comm.GetCommEvent();   CString strBufferOnComm;   switch(comEvent)   {     case 2:          {             cBytArrayOnComm.RemoveAll();             varoutOnComm.Clear();             varoutOnComm=m_comm.GetInput();             Sleep(5);             varoutOnComm.GetByteArrayFromVariantArray(cBytArrayOnComm);             strBufferOnComm=ConvertByteArrayStr(cBytArrayOnComm);             strTotal=strTotal+strBufferOnComm;             ::ResumeThread(hThreadAnylize);             break;           }      default :             break;   }}


我不太清楚,如果用CSerail类的话,怎么能对应到MSComm控件?onComm函数和GetInput()函数在控件中怎么对应?

[解决办法]
这个估计得去查Windows 核心编程里面的串口编程的API了,或者你能找到onComm()和GetInput()的函数具体实现也可以。个人感觉难度有点大
[解决办法]
要用控件就用控件,要用类就用类.
你要使用类的话肯定是要使用一 个对象..
你的控件中也使用了一个对象.
那么 这两个对象不能结合在一起,或是很难结合在一起..
你只能用一种方法实现,要么用类.要么用CSerial

网上还有个cncomm串口操作类吧.你也可以试下.挺好用的.我就用它写了一个.

[解决办法]
串口操作应该很多的

读书人网 >C++

热点推荐