问题:当InputMode属性值设置不同时,接收到的数据要正确显示,需要不同的处理。
InputMode属性:设置接收传入数据的格式,设置为0采用文本形式,设置为1采用二进制格式。
void __fastcall TForm1::MSComm1Comm(TObject *Sender)
{
AnsiString str="";
OleVariant s;
int bytenum;
char c1;
int i=0;
if(MSComm1->CommEvent==comEvReceive && MSComm1->InBufferCount>0)
{
s=MSComm1->Input;
}
if(MSComm1->InputMode==1 ) //接收数据为二进制形式
{
bytenum=s.ArrayHighBound(1)+1;