我在新建了一个单文档项目,其中view 是从CFormView中
继承出来的.   然后我往对话框中加入了MS DataGrid和MS Ado Control
组件,然后设置了MS Ado Control的数据库相关信息,并保证正确无误,
然后在MS DataGrid中把它的DataSource设置为MS Ado Control的ID号,   
    编译正确,但是在运行的时候,却提示winsplit.cpp有个断言错误,
是个创建view的时候错误,
    我在对话框模式中这样做完全正确,我不知道为什么会错,怎么解决?

解决方案 »

  1.   

    跟踪过是在创建视图类的时候发生错误,但是设置MS DataGrid的DataSource属性
    和这个有什么关系呢?
      现在我没有用MS Ado Control,自己写代码实现用ado连接数据库,数据库连接成功了,
    但是,我在用m_grid.SetRefDataSource((LPUNKNOWN)m_pRs);来把记录传递给MS DataGrid
    控件的时候,在运行的时候却没有显示任何的数据,不知道是何问题
      

  2.   

    关于显示的问题有了很小的进展,我能显示我的数据库的记录了(测试用
    数据库是2000版本的),但是我在ACCESS中新建了一个测试数据库
    (我的OFFICE 是2002)的,就不能正常显示记录了我的代码是这样写的:
            (省去了捕捉异常部分)
    m_pConnection.CreateInstance(__uuidof(Connection));
    m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=testdb.mdb","","",adModeUnknown);

             m_pRecordset.CreateInstance(__uuidof(Recordset));
    m_pRecordset->PutCursorLocation(adUseClient);
    m_pRecordset->Open("SELECT * FROM user",
    m_pCon.GetInterfacePtr(),
    adOpenStatic,
    adLockOptimistic,
    adCmdText);
             //m_grid是MS DataGrid控件
    m_grid.SetRefDataSource((LPUNKNOWN)m_pRs);
    但是运行的时候,提示有个"IDispatch error"异常错误,我觉得是m_pCon.GetInterfacePtr(), 原因,但是为什么换成别的数据库就不行了,请那位高手不吝赐教
      

  3.   

    m_pRecordset->Open("SELECT * FROM user",
    _variant_t((IDispathch *)m_pConn,true),
    adOpenStatic,
    adLockOptimistic,
    adCmdText);====>试