解决方案 »

  1.   


    这个只是打开当前目录下名字为picture1.bmp的文件吧?
      

  2.   

    加异常捕获看报什么错
    //打印调用ADO控件时产生的详细错误信息
    void dump_com_error(_com_error &e)
    {
        CString ErrorStr;
        _bstr_t bstrSource(e.Source());
        _bstr_t bstrDescription(e.Description());
        ErrorStr.Format( "\n\tADO Error\n\tCode = %08lx\n\tCode meaning = %s\n\tSource = %s\n\tDescription = %s\n\n",
            e.Error(), e.ErrorMessage(), (LPCTSTR)bstrSource, (LPCTSTR)bstrDescription );
        //在调试窗口中打印错误信息,在Release版中可用DBGView查看错误信息
        ::OutputDebugString((LPCTSTR)ErrorStr);
    #ifdef _DEBUG
        AfxMessageBox(ErrorStr, MB_OK | MB_ICONERROR);
    #endif   
    }try
    {
        //你的ADO代码
             
    }
    catch(_com_error& e)
    {
        dump_com_error(e);
      

  3.   

    那个打开picture1是把图片以长二进制存进数据库
      

  4.   

    先判断下数据库是否连接成功,打开成功,用Debug模式来调式,看堆栈调用然后查错哪儿了
      

  5.   

    我已经找到问题了使用CFileDialog ,会跳出路径到你保存图片的路径,而我的数据库路径是当前文件夹。所以无法连接数据库,解决办法在调用CFileDialog 前 先得到当前路径,调用完毕后再返回得到的路径就可以老人,谢谢各位大神的解答!