首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

MFC MSComm控件转CserialPort类解决办法

2012-03-09 
MFC MSComm控件转CserialPort类以前用CMScomm控件写的串口通讯程序,现在打算用用CSerial类实现以下,但是有

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串口操作类吧.你也可以试下.挺好用的.我就用它写了一个.

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

热点排行