可以截获delphi的所有异常,只要在program中继承一个异常类,
并将之实例化,即可建立自己的异常类。
//建立自己的异常处理类,从Exception继承。
Type
TGlobalExHandler=class
public
procedure HandlerProc(Sender:TObject;Einstance:Exception);
end;
// 重载处理函数
Procedure TGlobalExHandler.HandlerProc(Sender:TObject;Einstance:Exception);
begin
//用pos方法查找错误信息串中有无该错误;pos返回其位置,如大于0,表示有。
if pos('UNIQUE KEY',Einstance.Message)>0 then
Application.MessageBox('索引重复!',pChar('学生管理信息系统'),1);
if pos('OPERATOR',Einstance.Message)>0 then
Application.MessageBox('密码错误,请重新输入!',pChar('学生管理信息系统'),1);
end;
var
GlobalExHandler:TGlobalExHandler;
begin
// GlobalExHandler:=TGlobalExHandler.Create;//实例化
//将项目的异常处理指向自己的错误处理类的句柄
// Application.OnException:=GlobalExHandler.HandlerProc;
(下略)
End;