我想知道有没有人有过类似的经历。我正在尝试追踪问题的根源,但我想出了 nil。我在 Delphi 5 中有一个项目,其中包含 Report Builder 报告。我需要升级版的报告生成器,所以我尝试在 Delphi 7 中运行该项目。当我的项目运行并单击按钮查看报告时,它可以正常查看。但是,如果我使用 paramstr 运行报告(showmainform 设置为 false)并显示报告过程运行,我会收到堆栈溢出错误。
原始代码是:
if lowercase(ParamStr(1)) = 'termsexceeded' then begin
reportsdata.termsexceeded.close;
reportsdata.termsexceeded.open;
reports.ppTermsExceeded.print;
reportsdata.termsexceeded.close;
application.terminate;
end;
它给了我 .print 函数的堆栈溢出错误。
在 Delphi 7 中工作的代码是:
if lowercase(ParamStr(1)) = 'termsexceeded' then begin
reportsdata.termsexceeded.close;
reportsdata.termsexceeded.open;
reports.left := -10000;
reports.show;
reports.ppTermsExceeded.print;
reportsdata.termsexceeded.close;
application.terminate;
end;
有没有人建议我如何调试它以查看问题出在我的 Delphi 7 还是 Reportbuilder 上?
报告表单的 .show 事件上没有任何事件。
任何有关如何深入了解这一点的建议将不胜感激。
问候