我予览的时候,记录少没有问题,如果记录多的话。
系统会提示:XXXXXXXXXXX address xxxxxxxx(大概)。QUICKREP的版本是3。6
具我分析,可能是资源用完了,但是又决的没有道理呀。因为我的内存是256M的呀。
我是先放好一个QUICKREP,然后直接用quickrep1.Preview;予览。
请大侠们帮我分析分析!!!!!。有演示最好。
系统会提示:XXXXXXXXXXX address xxxxxxxx(大概)。QUICKREP的版本是3。6
具我分析,可能是资源用完了,但是又决的没有道理呀。因为我的内存是256M的呀。
我是先放好一个QUICKREP,然后直接用quickrep1.Preview;予览。
请大侠们帮我分析分析!!!!!。有演示最好。
低下生成报表临时文件,然后再用这些临时文件来报表,你看看你的
临时文件夹,我不敢确定是不是跟这个有关系,但是定期清除临时文
件总是好的,或者对系统盘整理一下碎片。
第一种:access violation at address 00000073 Write of address 8cbf895c第二中:Stream read error第三种:Canvas does not allow drawing记录数在2000条以上。页数在60页以上。(予览的时候,百分比走不完。就出错了)
我建了一个FORM。一个QUERY。还有数据源。
然后在FORM上放一个quickrep1。上面放若干TQREXPR。(都是手动创建的,不是动态的)
但还不行。
代码:
begin
IF flatcombobox1.text<>'' then//如果选择了专业
begin
QUERY2.ACTIVE:=FALSE;
query2.sql.clear;
query2.sql.add('select * from '+bmk+'');
query2.open;
If query2.recordcount<>0 then
begin//找到记录,开始打印
qrlabel15.caption:='专业名称:'+tempzy;
quickrep1.Preview;
end
else
showmessage('没有找到要打印的信息,程序拒绝打印!');
end
ELSE
Showmessage('请注意,你没有选择专业!');
end;
不过,不好意思,我确实没碰到这个问题,不好说,第一种:access violation at address 00000073 Write of address 8cbf895c第二中:Stream read error第三种:Canvas does not allow drawing
这三个错误 后两个错误,给这可是没有任何关系啊,第一个错误还是经常碰到的,不过Delphi 经常出现这种错误,也不好说是什么原因,可能是Delphi的问题,不能预览太多,你可以试一下看最多多少条记录出错,然后把程序在别的机器上面试一下,看是不是自己的饿系统的问题?!要在别的机器上面也是如此的话,,呵呵,Delphi的But, (我想不大可能)
onprint事件或者在表达式控件中
使用了除0
硬盘缓冲:加大硬盘空间,或者你自己编程控制打印队列中打印任务的数目
或者你把多个任务打包成一个任务,就想word做的一样;
一个是打印控件内存没释放,导致内存被占满:查程序,释放内存。