像VB那样,有错误就立刻退出。不要弹出Access Violation的对话框,然后继续下去

解决方案 »

  1.   

    try
    //可能出错的语句
    except
     Application.Terminate;//用这个可以退出
    end;
      

  2.   

    case5166,谢谢,我知道这样的方法我要的是  不要我们和Delphi去干预的那种,有错误就立刻退出。只有指定try...except块才我们处理,防止退出。其余的情况一律自动退出。就像VB这样:private sub func()
      i=1/0 .....a
      on error goto ErrLine ......这句相当于try
      j=1/0 .....b
    ErrLine:                ......这句相当于except
      msgbox "Error"
    end sub
    a行的那种错误,VB是直接结束程序退出的. b行的那种错误由于在错误捕捉期间,由我的ErrLine处理如果没更好的答案,分就给你了。
      

  3.   

      private
       procedure   HandleError(Sender:   TObject;   E:   Exception);
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
    begin
    application.OnException:=HandleError;
     StrToInt('sssssss');
    end;
    procedure   TForm1.HandleError(Sender:   TObject;   E:   Exception);
    begin
      Application.Terminate;
    end;
    end.用这个就可以。
      

  4.   

    或者在主窗体里面放置一个ApplicationEvents1控件,在里面的OnException事件中写Application.Terminate;其实原理是一样
      

  5.   

    在dpr代码里:
    try
      Application.Run;
    except
      Application.Terminate;
    end;
      

  6.   

    谢谢大家了,application.OnException:=HandleError;这个最精简了,可能错误处理真的需要人工干预吧结贴了 :)