m_pRecordset->AddNew();//添加新行  
m_pRecordset->PutCollect("IDC_xingming",(_bstr_t)m_xingming);  
m_pRecordset->Update();把这三句每句后面都加上返回值,之后单步跟踪一下,看看哪句错了,把错误提示整出来再帮你分析,当然也许你看到提示后自己就解决了,另外看看m_pRecordset是否为空。

解决方案 »

  1.   

    这样加异常捕获看是什么错误
    try
    {
    //你的ADO代码
    }
    catch (_com_error& e)
    {
    CString strMsg;
    strMsg.Format(_T("错误描述:%s\n错误消息%s"), 
    (LPCTSTR)e.Description(),
    (LPCTSTR)e.ErrorMessage());
    AfxMessageBox(strMsg);
    }
      

  2.   

    单步跟一下,看看是m_pRecordset->AddNew();//添加新行  
    m_pRecordset->PutCollect("IDC_xingming",(_bstr_t)m_xingming);  
     m_pRecordset->Update();这三个哪个抛出的异常
      

  3.   


    // m_pRecordsetPtr没有open吧。
    // 要先返回一个记录集。