最近用CSerialPort编写串口程序的时候,发现只能接收字符和数字,不能接收汉字,
自己在设计的时候能够实现汉字的显示,但是接收区在接收到几行汉字后就会一直的闪动,不知道是什么原因!
我的接收代码如下:
LONG CSCOMMDlg::OnCommunication(WPARAM ch, LPARAM port)
{
...
m_ReceiveData+=ch;
UpdateData(FALSE);
return 0;
}
自己在设计的时候能够实现汉字的显示,但是接收区在接收到几行汉字后就会一直的闪动,不知道是什么原因!
我的接收代码如下:
LONG CSCOMMDlg::OnCommunication(WPARAM ch, LPARAM port)
{
...
m_ReceiveData+=ch;
UpdateData(FALSE);
return 0;
}
解决方案 »
- 问个ActiveX接口的问题,怎么定义一个接口传递一个函数指针进去
- 如何向对话框中添加属性表
- 怎样获得本机中某指定帐户的权限!!!在线等!!!!
- ?求助,真的解决不了么。很急,非常感谢!
- 关于文件存取问题。
- 如何把一CString类型的数据,写入ACCESS的一日期型字段
- recvfrom为何总是出现10022的错误?
- 关于程序Vc++(代码来自WINDOWS程序设计一中)不可以链接(SOS!)
- Jabber 服务器和客户端是否建立长连接???
- 哪有ie5.0以上的ie开发包,请提供网址
- 如何进行分离?
- 用ADO和vc开发一个程序,当INsert和Update时会报异常,而select就没有问题
m_ReceiveData+=ch;
BYTE bchar;
bchar = (BYTE)m_ReceiveData[m_ReceiveData.GetLength()-1];
if(bchar > 127)
m_ReceiveData = m_RecieveData.Left(m_ReceiveData.GetLength()-1);
UpdateData(FALSE); //不过这样会丢失一些汉字,lz可以想一些办法,将汉字的一半暂存起来,与下一次来的数据衔接起来就可以了