ON_EVENT(CDlg,?IDC_MSCOMM,?1,?OnCommMscomm,?VTS_NONE)
void?CDlg::OnCommMscomm()?//串口接收數據
{
//?TODO:?Add?your?control?notification?handler?code?here
VARIANT?variant_inp;
COleSafeArray?safearray_inp;
LONG?len,k;
BYTE?rxdata_temp[400];?///ZM
CString?strtemp,strtemp1;
if(m_ctrlComm.GetCommEvent()?!=?2)?//事件值為2表示接收緩沖區內有字符
return;?
variant_inp?=?m_ctrlComm.GetInput();?//讀緩沖區
safearray_inp?=?variant_inp;?//VARIANT型變量轉換為ColeSafeArray型變量
len?=?safearray_inp.GetOneDimSize();?//得到有效數據長度
for(k?=?0;?k?<?len;?k++)
{
...
}
}