int CWLCommand:: GetMaxCourseID()
{
_RecordsetPtr pRs("ADODB.RecordSet");
pRs->Open(_variant_t("Select Max(id) as MAXID From Course_Info"),_variant_t((IDispatch *)m_cnn->m_pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
int nResult;
_variant_t vValue=pRs->Fields->Item[_variant_t("MAXID")]->Value;
if(V_VT(&vValue)!=VT_NULL)
{
nResult=atoi(_bstr_t(vValue));
}
else
{
nResult=0;
}
pRs->Close();
return nResult;}
单步调试,一运行到pRs->Open(_variant_t("Select Max(id) as MAXID From Course_Info"),_variant_t(m_cnn->m_pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
程序就会出错,“WorkLoad.exe 中的 0x0041c806 处未处理的异常: 0xC0000005: 读取位置 0xcdcdcdd5 时发生访问冲突”是什么地方的问题呢?m_cnn->m_pConn没有搞好吗?
需要对m_cnn->m_pConn做什么处理吗?id就是数据库里类型为int的字段,用来做主键的
{
_RecordsetPtr pRs("ADODB.RecordSet");
pRs->Open(_variant_t("Select Max(id) as MAXID From Course_Info"),_variant_t((IDispatch *)m_cnn->m_pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
int nResult;
_variant_t vValue=pRs->Fields->Item[_variant_t("MAXID")]->Value;
if(V_VT(&vValue)!=VT_NULL)
{
nResult=atoi(_bstr_t(vValue));
}
else
{
nResult=0;
}
pRs->Close();
return nResult;}
单步调试,一运行到pRs->Open(_variant_t("Select Max(id) as MAXID From Course_Info"),_variant_t(m_cnn->m_pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
程序就会出错,“WorkLoad.exe 中的 0x0041c806 处未处理的异常: 0xC0000005: 读取位置 0xcdcdcdd5 时发生访问冲突”是什么地方的问题呢?m_cnn->m_pConn没有搞好吗?
需要对m_cnn->m_pConn做什么处理吗?id就是数据库里类型为int的字段,用来做主键的
解决方案 »
- 我想在一个视图中的某一坐标点显示系统时间,该怎么做呢?
- 我的BYTE型的数组,想用SetOutput发送出去,应做哪些转换?急!
- 如何实现对话框窗口的分割
- 如何获得windows下安装的所有软件名称
- 用vc怎样把bmp图像放大缩小.要求进行平滑处理!!!
- 一个数字图像处理问题
- Don Box 说 COM id dead?那大家不是又扑空了?ATL没用了?
- 高手看过来有关txt转换成pdf的问题
- 请问rtf文件是什么文件,用什么应用程序生成的?
- 变换光标与LeftButtonDown
- 打开QQ对话框,为何得不到其进程句柄?而打开其他应用程序却可以得到?
- CSocket编程服务端响应多客户端的问题
piRecordset.CreateInstance(__uuidof(Recordset));
捕捉异常_com_error,description()看看