Personalizar a caixa de mensagem de exceções (erro) do Delphi
- Declare um método (procedure) na seção private do form principal conforme abaixo: private procedure ManipulaExcecoes(Sender: TObject; E: Exception); - Vá até a seção implementation e implemente este método, conforme o exemplo: procedure TForm1.ManipulaExcecoes(Sender: TObject; E: Exception); begin MessageDlg(E.Message + #13#13 + 'Suporte técnico:'#13 + 'suporte@servidor.com.br', mtError, [mbOK], 0); end; - No evento OnCreate do Form principal escreva o código abaixo: procedure TForm1.FormCreate(Sender: TObject); begin Application.OnException := ManipulaExcecoes; end; === Para testar === - Coloque um Button no form; - No evento OnClick deste botão coloque o código abaixo: procedure TForm1.Button1Click(Sender: TObject); begin StrToInt('ABCD'); { Isto provoca uma exception } end;
Mas Cuidado! Não coloque código que possa gerar exceção na rotina que manipula as exceções, pois se ocorrer uma exceção neste rotina, esta será chamada recursivamente até estourar a pilha.