报告格式不支持,可以打开ACCESS97的,听说要下载什么补丁,下载什么补丁?在哪里下载?下载什么补丁?

解决方案 »

  1.   

    _ConnectionPtr m_pConnection;
    HRESULT hr;
    try
    {
    hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
    if(SUCCEEDED(hr))
    {
    hr = m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb","","",adModeUnknown);///连接数据库
    ///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;  }
    }
    }
    catch(_com_error e)///捕捉异常
    {
    CString errormessage;
    errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
    AfxMessageBox(errormessage);///显示错误信息
    return FALSE;

    _RecordsetPtr m_pRecordset
    m_pRecordset.CreateInstance("ADODB.Recordset");
    m_pRecordset->Open("SELECT * FROM users",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
      

  2.   

    试试 :Provider=Microsoft.Jet.OLEDB.3.51;  看可不可以!
      

  3.   

    这确实是个问题,VC通过ODBC可以访问ACCESS2000,但通过DAO不能访问
    我们能有什么办法呢
      

  4.   

    楼上的这Y太讨厌。
    Provider=Microsoft.Jet.OLEDB.3.51是不支持Access2k的,如果要支持Access2k换成
    Provider=Microsoft.Jet.OLEDB.4.0就可以
      

  5.   

    楼上的楼上那个B象一堆黄×。
    TO楼主:装win2000或者xp的升级包就可以,或者装.net framework
      

  6.   

    http://vcp4.51.net/VC/DataBase.htm
    第4、5。
    如果不是用OLE DB或ADO的,还是用ACCESS 2000的工具转换为ACCESS 97格式。或用VC.NET 2003就连ACCESS XP都能打开。
      

  7.   

    VC6默认的是用DAO350(JET 3.51),因为Access2000己经使用 Jet 4.0 Engine,应该使用DAO360(JET 4.0) 
       最简单的方法:
       在应用类的InitInstance()中加入两行即可!
       
        AFX_MANAGE_STATE(AfxGetModuleState());
        AfxGetModuleState()->m_dwVersion = 0x0601;    //访问Access2000,指定使用DAO360
       

       也有人将Access2000转换成Access97
       注意: 
       (1)要有DAO360.dll [C:\Program Files\Common Files\Microsoft Shared\DAO\]
       (2)MFC尽量采用动态连接, 若需要静态连接则比较复杂.如果你这样编译通不过的话,那么你就需要安装 sp5
      

  8.   

    BOOL CXXXXXX::InitInstance()
    {
         AfxEnableControlContainer();
         AfxGetModuleState()->m_dwVersion = 0x0601; //添加内容.     .....
    }