Tratamento de ERROS tá DIFICIL
Boa Tarde Amigos ,
Por favor preciso de alguma rotina ou função para tratamento de erros , para que o sistema não trave e ainda me exiba uma mensagem dizendo o tipo de erro , ou numero de erro , ou coisa parecida , mais que não me saia do sistema ..........
Por favor preciso de alguma rotina ou função para tratamento de erros , para que o sistema não trave e ainda me exiba uma mensagem dizendo o tipo de erro , ou numero de erro , ou coisa parecida , mais que não me saia do sistema ..........
Anonymous
Curtidas 0
Respostas
Dicipulofer
04/02/2003
Ola amigo.
Sugiro aque vc use Try Execept.
Try
strtoint(´11 22´); // vai dar erro.
Except
ShowMessage(´numero invalido´)
Sugiro aque vc use Try Execept.
Try
strtoint(´11 22´); // vai dar erro.
Except
ShowMessage(´numero invalido´)
GOSTEI 0
Navoid
04/02/2003
seguinte cara use o bloco try...except..end; desta maneira
try
// códigos
except
on e: exception do
showmessage(e.message);
end;
até
try
// códigos
except
on e: exception do
showmessage(e.message);
end;
até
GOSTEI 0
Rubensavelino
04/02/2003
- 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 + #1313 +
´Suporte técnico:´13 +
´tecnobyte@ulbrajp.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;
Observações
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.
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 + #1313 +
´Suporte técnico:´13 +
´tecnobyte@ulbrajp.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;
Observações
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.
GOSTEI 0