>e:\projects\chuankou\chuankou\chuankoudlg.cpp(61) : error C2664: 'DDX_Control' : cannot convert parameter 3 from 'CString' to 'CWnd &'
1>e:\projects\chuankou\chuankou\chuankoudlg.cpp(62) : error C2664: 'DDX_Control' : cannot convert parameter 3 from 'CString' to 'CWnd &'
1>e:\projects\chuankou\chuankou\chuankoudlg.cpp(267) : error C2664: 'CMscomm1::put_Output' : cannot convert parameter 1 from 'HWND' to 'VARIANT'
各位高手,请问出现这种错误,是什么原因呀!可否指点小弟以下,小弟是一个新手。谢谢!
1>e:\projects\chuankou\chuankou\chuankoudlg.cpp(62) : error C2664: 'DDX_Control' : cannot convert parameter 3 from 'CString' to 'CWnd &'
1>e:\projects\chuankou\chuankou\chuankoudlg.cpp(267) : error C2664: 'CMscomm1::put_Output' : cannot convert parameter 1 from 'HWND' to 'VARIANT'
各位高手,请问出现这种错误,是什么原因呀!可否指点小弟以下,小弟是一个新手。谢谢!
关联的变量的类型弄错了吧,DDX_Control宏关联的是控制型变量,而DDX_TEXT关联的是值类型的变量
{BEGIN_MESSAGE_MAP(CChuanKouDlg, CDialog)
.........
//DDX_Control(pDX, IDC_MSCOMM1, m_strComm);
END_MESSAGE_MAP()}里面如果使用了DDX_Control(pDX, IDC_MSCOMM1, m_strComm);
这个运行时按下那个清屏按钮就会死机,而且在其他以注册的计算机上打开来不能发送和显示数据,没反应。(生成的.exe文件是release类型的);但是如果屏蔽了它,可以发送和显示数据,但是在但是在其他计算机上可打开也运行不起。
END_MESSAGE_MAP()}}”这个抄错了,应该是下面这个函数:void CChuanKouDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_MSCOMM1, m_strComm);
DDX_Text(pDX, IDC_EDIT_TXDATA, m_strEditTx);
DDX_Text(pDX, IDC_EDIT_RXDATA, m_strEditRx);
//DDX_Control(pDX, IDC_MSCOMM1, m_strComm);
}
里面的"DDX_Control(pDX, IDC_MSCOMM1, m_strComm);"这个。
同时补充一句:就是如果屏蔽了DDX_Control(pDX, IDC_MSCOMM1, m_strComm)这个就可以清屏,并且不会死机。但是在其它以注册的机器上不能正常运行。