代码片断如下:
//按钮处理程序,通过调用SendPosComm()发送aHomeComm[]16进制数组
void CCtrfromView::OnButtonHome()
{ int aHomeComm[6];
aHomeComm[0]=0xff;
aHomeComm[1]=0x30;
aHomeComm[2]=0x31;
aHomeComm[3]=0x00;
aHomeComm[4]=0x57;
aHomeComm[5]=0xef; SendPosComm(aHomeComm);
return;}
//串口发送子程序
void CCtrfromView::SendPosComm(int *pComDate)
{ if(!m_wndCOM1.GetPortOpen())//是否打开串口
{
AfxMessageBox("您还未打开您的串口!");
return;
}
322 m_wndCOM1.SetOutput(COleVariant(pComDate));//发送
return;
}
显示如下错误:
G:\我的工程\工作工程\ViewSys9\CtrfromView.cpp(322) : error C2440: 'type cast' : cannot convert from 'int *' to 'class COleVariant'
No constructor could take the source type, or constructor overload resolution was ambiguous
//按钮处理程序,通过调用SendPosComm()发送aHomeComm[]16进制数组
void CCtrfromView::OnButtonHome()
{ int aHomeComm[6];
aHomeComm[0]=0xff;
aHomeComm[1]=0x30;
aHomeComm[2]=0x31;
aHomeComm[3]=0x00;
aHomeComm[4]=0x57;
aHomeComm[5]=0xef; SendPosComm(aHomeComm);
return;}
//串口发送子程序
void CCtrfromView::SendPosComm(int *pComDate)
{ if(!m_wndCOM1.GetPortOpen())//是否打开串口
{
AfxMessageBox("您还未打开您的串口!");
return;
}
322 m_wndCOM1.SetOutput(COleVariant(pComDate));//发送
return;
}
显示如下错误:
G:\我的工程\工作工程\ViewSys9\CtrfromView.cpp(322) : error C2440: 'type cast' : cannot convert from 'int *' to 'class COleVariant'
No constructor could take the source type, or constructor overload resolution was ambiguous
COleSafeArray safearraySend;
safearraySend.CreateOneDim(VT_UI1, nLen, pComDate, 0);
varSend = safearraySend;
m_wndCOM1.SetOutput(COleVariant(varSend));nLen代表要发送字节数,pComDate是发送内容的首地址。