今天一运行程序,突然发现一个异常问题
系统错误
错误信息
Access violation at address 005946?EB in model 'POSTCTM.EXE'.Read of
Address FFFFFFF
以前也没事的啊,这是怎么回事,重起了好几次了都不行
postcrm是我的程序
我是在打开delphi 在里面运行的
这是出错的地方,单步运行一到这里就出错
   Rep_dyyqk := TRep_dyyqk.Create(self);
         try
            Rep_dyyqk.Preview;         finally
            Rep_dyyqk.Free;
         end;

解决方案 »

  1.   

    你这是一个报表预揽的代码吧,照你的代码所写可知:Rep_dyyqk为一主报表控件
    在程序运行时不应该是创建报表,即Rep_dyyqk := TRep_dyyqk.Create(self);
    是错误的,而应该是创建窗体(假如主报表控件所在窗体为Form1):
    Form1:=TForm1.create(Application);所以,此段代码应该为:  Form1:=TForm1.create(Application);
      try
          Form1.Rep_dyyqk.Preview;
      finally
          Form1.Free;
      end
      

  2.   

    其实错误是出在Form1:=TForm1.create(Application);应该换成:
    if Form1=nil then
      Form1:=TForm1.create(Application);结合我上面的回答就应该是完整的解决办法了。(不要扔砖头,我是猜的。)
      

  3.   

    我创建的是quickreport
    根本不用form的
    以前一直是这么做的,所以我的语句应该没有问题,而且其他的报表也是这样做的,都很正常啊,这和打印驱动也没有关系啊,我根本没有打印机