hr = m_cn->Open((_bstr_t)("Provider=SQLOLEDB;Data Source="+dserver+
";Initial Catalog="+dbase+";uid="+uid+";pwd="+pwd+";"),"","",NULL);
如果网络断开了,肯定连接不上,但会弹出断言,如何才能避免?
try{
hr = m_cn->Open((_bstr_t)("Provider=SQLOLEDB;Data Source="+dserver+
";Initial Catalog="+dbase+";uid="+uid+";pwd="+pwd+";"),"","",NULL);
}
catch(error_com e)
{
    MessageBox("连接失败!");
}
这样错不能捕获。

解决方案 »

  1.   

    catch(_com_error &e)
    {
           // Exception handling.
           DumpError(e);
    }
      

  2.   

    我用这个,呵呵~
    try
    {
    }
    catch(_com_error e)
    {
       TRACE(_T("警告: %s;\n     文件: %s; 行: %d\n"), (LPCSTR)e.Description(),__FILE__, __LINE__);
       AfxMessageBox(_T((char*)e.Description()));
    }
      

  3.   

    这样捕获异常
    try
    {
    ......
    }
    catch( _com_error e)
    {
    .......
    }