使用MSCOMM接收字符不全的问题
再xp下,装的vb6。
我要收到的字符串是这样的:B$1C20010101^158^200407132^E$
结果我收到后用Memo显示是这样的:
B$1C2001
0101
8
00407132
中间的“^”号和结尾的“E$”都不见了。
我的代码如下:
**********************************************************************
procedure TfrmImportData.MSComm1Comm(Sender: TObject);
var
strTemp : string;
vBuffer : OleVariant;
i : integer;
begin
if MSComm1.CommEvent = comEvReceive then
begin
vBuffer := MSComm1.Input;
strTemp := VarToStr(vBuffer);
Memo1.Lines.Add(strTemp);
end
end;
*****************************************************************
其中属性为:
MSComm1.InputMode := 0;
MSComm1.RThreshold := 1;
朋友用VB帮试着收到的内容如下:
B$1C2001
0101^15
8^2
00407132^E$
还请各位高手帮忙!!!!
相关推荐
串口通讯源代码,自做独立通讯的类
独立Serialport类,让你摆脱Mscomm控件,简洁的程序界面,收发数据非常稳定。
MSComm控件使用详解(转)
MSComm 控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm控件在串口编程时非常方便,程序员不必去花时间去了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。 Microsoft Communications Control(以下简称MSComm)是Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通
在Delphi中使用串口控件MSComm的0字符接收例程祥解
在Delphi中使用串口控件MSComm的0字符接收例程祥解
MScomm控件使用详解(整理了好久)
MSComm控件使用详解 1 §1.1 MSComm控件两种处理通讯的方式 1 §1.1.1 事件驱动方式 2 §1.1.2 查询方式 2 §1.2 MSComm控件的常用属性 2 §1.3 MSComm控件属性详解 2 §1.3.1 CommPort属性 2 §1.3.2 PortOpen属性 3 §1.3.3 RThreshold 属性 3 §1.3.3 CTSHolding 属性 4 §1.3.4 SThreshold 属性 4 §1.3.5 Handshake 常数 4 §1.3.6 OnComm 常数 5 §1.3.7 Error 常数 5 §1.3.8 InputMode 常数 5 §1.3.9 CDHolding属性 5 §1.3.10 DSRHolding 属性 6 §1.3.11 Settings 属性 6 §1.3.12 InputLen 属性 7 §1.3.12 Output 属性 8 §1.3.13 EOFEnable 属性 9 §1.3.14 错误消息(MS Comm 控件) 9 §1.4 MSComm控件进行串行通信的一般步骤 10 §1.5 实例 10 §1.5.1 控件的初始化 11 §1.5.2 数据的发送和接收 11
利用MSComm控件实现字符型数据发送与接收(含2个源代码)
开发环境:VB6.0; VB控件:MSCOMM; 实现功能:数据发送和接收; 实现方式:查询方式和事件方式 供大家对比使用,调试均已成功


