是不是因为GetRecordset函数中的m_pRecordset.CreateInstance(__uuidof(Recordset));语句会多次执行呢?

解决方案 »

  1.   

    谢谢yeyuboy(海绵)的提示,不过,我看了一下,好象不是这个原因吧!!
      

  2.   

    1.导入ado库
    2.重命名EOF
    3.初始化com库
      

  3.   

    在你CreateInstance之前,按照我以上的步骤做了吗?
      

  4.   

    搂主是不是写错了?
    初始化为::CoInitialize(NULL);
    不是::CoUnInitialize();
      

  5.   

    jszj(老板说mis部不是赚钱的部门...)   谢谢兄弟的提醒,不过你说的我都做了,只不过贴过来都省略了!!!!! 
    还有 sambios(雨雪逝去 ) 兄弟,这两者好象没多大关系吧!!
      

  6.   

    void ADOConn::OnInitDBConnect()

        ::CoUninitialize();//这里有明显错误,初始化COM环境..你释放了COM应该为::CoInitialize()
    //或者干脆用AfxOleInit();
    try
    {
    m_pConnection.CreateInstance(__uuidof(Connection));
    m_pConnection->Open("Provider=SQLOLEDB;SERVER=WNJF_DATASERVER;DATABASE=djk;UID=sa;PWD=3906663","","",-1);}
    catch(_com_error e)
    {AfxMessageBox(e.Description());
    }}
      

  7.   

    把::CoInitialize()放到ADOConn::OnInitDBConnect里是不合适的,你每调用一次,都要初始化,而msdn上说,只要一次即可,这样奇不多余?
    还有,你把CoInitialize写成UN,那肯定是不正确的
    学会单步调试,最后在出错的地方,用GetLastError捕获错误代码并从MSDN上查看原因
      

  8.   

    jszj(老板说mis部不是赚钱的部门...) ( uovk(石头) ( 两位仁兄,多谢你们指点,本人现在按照你们的方法看看!  还有JSZJ仁兄,你说的单步调试,本人不是很熟悉,本人搞VC还刚起步,请以后多多指点! 谢谢!!
      

  9.   

    谢谢各位仁兄的热心帮助! 问题出在这:SQL="select * from j200503 where acc_nbr="+Gacc_nbr;  大家,知道吗??、 ^_^