串口部分程式
void CSCommDlg::OnComm()
{
VARIANT variant_inp;
COleSafeArray safearray_inp;
LONG len,k;
BYTE rxdata[2048]; //設定BYTE陣列 An 8-bit integerthat is not signed.
CString strtemp;
if(RXDataRefreshFlg == TRUE)
{
m_strRXData.Empty();
RXDataRefreshFlg=FALSE;
}
if(m_ctrlComm.GetCommEvent()==2) //事件值為2表示接識訓沖區內有字符
{
variant_inp=m_ctrlComm.GetInput(); //讀緩沖區
safearray_inp=variant_inp; //VARIANT型變數轉換為ColeSafeArray型變數
len=safearray_inp.GetOneDimSize(); //得到有效資料長度
for(k=0;k<len;k++)
safearray_inp.GetElement(&k,rxdata+k);//轉換為BYTE型陣列
for(k=0;k<len;k++) //將陣列轉換為Cstring型變數
{
BYTE bt=*(char*)(rxdata+k); //字符型
strtemp.Format("%c",bt); //將字符送入臨時變數strtemp存放
m_strRXData+=strtemp; //加入接收編輯框對應字串
}
}
int i=m_strRXData.GetLength();
if(m_strRXData.GetLength()==58)
SendMessage(USER_RXDATA,0,0); //訊息回應函式 為處理訊息用
strtemp.ReleaseBuffer();
return;
}
運行一會出現
0x77c12a16指令參考的0x00001000 該記憶體不能為read
這是為什么 求指導 謝謝
758407526QQ
uj5u.com熱心網友回復:
找個現成的組件用吧,比如VictorComm轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/74410.html
上一篇:維納濾波影像復原VC程式跪求
下一篇:請高手幫助將龍文輸入平臺轉換成64位版本,32位下載地址:http://www.onlinedown.net/soft/25505.htm
