对于串口的初始化如下
    if(m_ctlComm1.GetPortOpen())
m_ctlComm1.SetPortOpen(FALSE); m_ctlComm1.SetCommPort(1); 
m_ctlComm1.SetInBufferSize(512); 
    m_ctlComm1.SetInBufferCount(0); 
m_ctlComm1.SetOutBufferSize(1024);
m_ctlComm1.SetOutBufferCount(0);
m_ctlComm1.SetSettings("38400,E,8,1");
m_ctlComm1.SetInputMode(1);
if(!m_ctlComm1.GetPortOpen())
{ m_ctlComm1.SetPortOpen(TRUE);
AfxMessageBox("serial port opened"); }
else
AfxMessageBox("cannot open serial port1");
m_ctlComm1.SetInputLen(0);
m_ctlComm1.SetRThreshold(8);
m_ctlComm1.GetInput(); 在oncomm中,写入代码
VARIANT variant_inp;
COleSafeArray safearray_inp;
long len,k;

BYTE data[256];
    if(m_ctlComm1.GetCommEvent()==2) 
    {     variant_inp=m_ctlComm1.GetInput();
safearray_inp=variant_inp; len=safearray_inp.GetOneDimSize(); for(k=0;k<len;k++)
safearray_inp.GetElement(&k,data1+k);当用串口助手发送15个16进制数据时,调试发现len=8;按照前面的设定应该是len=15才对,
特请教诸位。