VB6 Crystal报告XI GDI对象未发布

2020-09-17 03:30发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我一直在用我们的VB6应用程序跟...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我一直在用我们的VB6应用程序跟踪内存活动,并注意到在打开带有CrystalActiveXReportViewer控件的表单时,运行报表并关闭该表单时,GDI对象计数不会返回原始数字

如果在未运行报表的情况下打开和关闭表单,则GDI对象将返回到原始图

使用.ViewReport命令时,GDI对象计数会跳跃。 关闭表单时,计数不会返回到原始数字

以下代码设置报告的路径并创建对象

stRep = App.Path&IIf(Right(App.Path,1)=" \",""," \")&" Reports \ SomeReport.rpt"
设置m_oCrystalApp =新CRAXDRT.Application < br>设置m_oReport = m_oCrystalApp.OpenReport(stRep)

以下几行在关闭表单时运行,但不会将GDI对象的数量减少到打开表单之前的数字

设置m_oCrystalApp =不设置
设置m_oReport =不设置

我相信CrystalActiveXReportViewer控件是引起此问题的原因,但是即使在关闭窗体后,我也无法找到任何释放GDI对象的函数

我已经搜索了并且找不到解决问题的任何东西

我意识到它们都是传统产品,但是任何帮助将不胜感激

1条回答
clasier
2020-09-17 04:36 .采纳回答

RDC已经失去支持10年了,是时候升级到CR .NET了,没有补丁,也没有修复程序

https: //wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads

我只能建议经常关闭您的应用以释放内存。

一周热门 更多>