象下面这样:
    m_rs->Close();
    m_rs = NULL;
    delete m_rs;
m_rs赋为NULL后,分配的内存块已经丢失了,应该不能再用delete了吧。
我觉得正确应该是:
    m_rs->Close();
    delete m_rs;下面的同样:
    m_db->Close();
    m_db = NULL;
    delete m_db; 试试看。

解决方案 »

  1.   

    在dll中调用dao的函数后 退出时需要调用AfxDaoTerm(),具体可参见msdn,写的很详细的
    1.Create any MFC DAO objects after the DLL's InitInstance function.
    2.Destroy these objects before calling AfxDaoTerm.
    3.Call AfxDaoTerm before the DLL's ExitInstance function. 
      

  2.   

    好像不要吧,我的DAO程序中从来没有调用过AfxDaoTerm(),一定是你的有关DAO指针有问题?
      

  3.   

    好像不要吧,我的DAO程序中从来没有调用过AfxDaoTerm(),一定是你的有关DAO指针有问题?
      

  4.   

    我觉得xwind说的比较有道理,明天上班我去试一下,非常感谢![email protected]