我做的是个基于对话框的程序,一个按钮调用查询数据库函数,是正确的,结果显示再CListCtrl控件里;另外一个按钮完成打印CListCtrl控件里面内容功能,也是正确的。当单击“查询”按钮后(结果可以正确显示在CListCtrl控件里),单击“打印”按钮(此时可以把CListCtrl控件里的内容按照程序要求打印预览)。但是当再次单击“查询”按钮时,系统报错(就是那种出现严重错误的情况,出现的一个对话框问要不要向MS发送错误原因)。
我打印最后也调用了EndDC()和DeleteDC()函数的啊
哪位大侠有这方面的经验,请帮帮我

解决方案 »

  1.   

    谢谢 handsomerun(毛毛) 的建议 我先试试
      

  2.   

    连续几次查询都是正确的
    但查询跟打印交叉调用就报错
    显示的报错对话框说:Run Time Error
    调试时,我单击“查询”按钮后(结果可以正确显示在CListCtrl控件里),单击“打印”按钮(此时可以把CListCtrl控件里的内容按照程序要求打印预览)。但是当再次单击“查询”按钮跟踪到m_pConnection->Open(……)时报错。
      

  3.   

    “单击“打印”按钮(此时可以把CListCtrl控件里的内容按照程序要求打印预览)。”在执行打印操作的时候,应该没有对数据库进行操作的任何代码吧
    打印只是把listctrl中的记录打印出来,还是什么的
      

  4.   

    查询后关闭了数据库
    用的是m_pRecordset->Close();最开始只有这一句,程序报错Run Time Error
          m_pConnection->Close();又在程序最后加上这一句,还是报错Run Time Error
          m_pRecordset.Release();
          m_pConnection.Release();又加了这两句,还是报错Run Time Error
    如果连续单击“查询”按钮,每次都能正确显示结果到CListCtrl控件里。
    To handsomerun(毛毛) :打印操作里面没有涉及关于数据库的操作。
    调试时,我单击“查询”按钮后(结果可以正确显示在CListCtrl控件里),单击“打印”按钮(此时可以把CListCtrl控件里的内容按照程序要求打印预览)。但是当再次单击“查询”按钮跟踪到m_pConnection->Open(……)时报错。
    我想既然多次连续单击“查询”按钮,每次都能正确显示结果到CListCtrl控件里,那么m_pConnection->Open(……)应该不会有错。任何一次执行打印后,就在m_pConnection->Open(……)处报错,因此我想问题应该在打印的程序段里。顺便说一下,我在打印时调用了CListCtrl的变量m_List_Statistic,打印需要的数据来源通过m_List_Statistic传进来。查询时,执行查询后就把结果传给m_List_Statistic指向的CListCtrl控件。
      

  5.   

    m_pRecordset->Close();就可以了
    别的connect什么的,不用关闭的??
    你在查询处是用
    m_pConnection->Open(……)??open的是connect??
    不是recordset??
      

  6.   

    我用m_pConnection->Open(……)来连接数据库
    查询用的时m_pRecordset->Open(……);
    我想问题有可能出在那个CListCtrl类型的变量m_List_Statistic上。我调用的打印函数的声明是这样的:void PrintListCtrl(CListCtrl &list),在打印函数void OnBtnPrint() 里面就一句:{PrintListCtrl(m_List_DetailStatistic);}。
    所以,我编了个函数用来返回一个跟m_List_Statistic内容一样的CListCtrl类型变量,准备在打印函数里面调这个新的变量而不调用m_List_Statistic。可惜函数编得不好。
    谢谢你呀,handsomerun(毛毛) 
      

  7.   

    今天偶然之间,找到问题出在哪里了。原来我打印预览的文档默认在“我的文档”目录下,这样预览之后再点击“查询”按钮,程序就在“我的文档”目录下连接数据库,(注意:原来在工程名目录下连接数据库,我的数据库文件是放在工程名目录下的),当然是连接失败的。我把数据库copy到“我的文档”目录下,问题解决了!希望大家能分享自己的编程经验。
    在此,多谢handsomerun(毛毛) ,lixiaosan(小三) 的支持。