有些时候看到别人的ado代码在捕获错误时都没有下边一段
try
{
}
catch(_com_error * e)

AfxMessageBox(e->ErrorMessage());
} 少了下面的:
catch(...)
{
long errorcount=m_pConnection->GetErrors ()->GetCount ();
_bstr_t add;
CString errormsg;
for (short i=0;i<errorcount;i++)
{
add=m_pConnection->GetErrors ()->GetItem (COleVariant((short)i))->GetDescription ();
errormsg.Insert (0,(char*)add);
errormsg+="\r";
}
AfxMessageBox(errormsg);
}
(变两星了高兴...)

解决方案 »

  1.   

    我写代码就没有
    catch(...){}。
    我觉得没有什么呀,我用了好久,msdn上的代码有加的,我不太明白。请
    搂主讲解一下,同时祝贺搂主升级!
    ================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  2.   

    谢谢,我写代码有catch 但是没有下边
    long errorcount=m_pConnection->GetErrors ()->GetCount ();
    _bstr_t add;
    CString errormsg;
    for (short i=0;i<errorcount;i++)
    {
    add=m_pConnection->GetErrors ()->GetItem (COleVariant((short)i))->GetDescription ();
    errormsg.Insert (0,(char*)add);
    errormsg+="\r";
    }
    只有一个AfxMessageBox("ADO出错!")恭喜升级,希望以后多拿出点来共享!我等着
    }