编译过了,执行问题IDispatch error #3092?解决之后,三天内给分
下面这段代码编译通过,运行时出现错误Idispatch error #3092,是什么原因?
void CRsCgDlg4::OnBtnjudge()
{
UpdateData();
// TODO: Add your control notification handler code here
//method one
CString str1=m_strDlgselansewer;
CString str2=m_strDlganswer;
if(str1.Compare(str2)!=0)
{
CString sql_;
sql_.Format("UPDATE TestResult_VIEW SET rusult='错' where quno='%s'",m_strDlgquno);
_bstr_t strSQL=sql_;
try
{
m_DBCnt->Execute(strSQL,NULL,adCmdText);
}
catch(_com_error& e)
{
AfxMessageBox(e.ErrorMessage());
return;
}
RefreshBoundData();
}
else
{
rightnumber++;
CString sql_;
sql_.Format("UPDATE TestResult_VIEW SET rusult='对' where quno='%s'",m_strDlgquno);
_bstr_t strSQL=sql_;
try
{
m_DBCnt->Execute(strSQL,NULL,adCmdText);
}
catch(_com_error& e)
{
AfxMessageBox(e.ErrorMessage());
return;
}
RefreshBoundData();
}
UpdateWindow();
}
其中m_strDlgselansewer和m_strDlganswer是视图TestResult_VIEW中的对应字段(字符型)在对话框中的变量,这段代码我想将这两个字段的内容进行比较,并把比较之后所得结果放在视图中对应的字段result中,m_DBCnt 为连接指针,其初始化代码如下:
m_DBCnt.CreateInstance(__uuidof(Connection));
CString sql_;
sql_.Format("DSN=ConKnow;UID=sa;PWD= ");
_bstr_t sql=sql_;
m_DBCnt->Open(sql," "," ",-1);