Tratamento de Exceções Centralizada

Delphi

26/01/2006

tem algum lugar onde posso capturar todas a exceções que são geradas pelo programa? para que possa concentrar as exceções em um único lugar?


Raserafim

Raserafim

Curtidas 0

Respostas

Leonardobhbr

Leonardobhbr

26/01/2006

crie uma procedure


procedure ManipulaExcecoes(Sender: TObject; E: Exception);
begin
MessageDlg(E.Message , mtError, [mbOK], 0);
end;


e no create do form principal


Application.OnException := ManipulaExcecoes;


GOSTEI 0
Raserafim

Raserafim

26/01/2006

blz leonardo.
mas como saber que tipo de erro ocorreu para então apresentar uma mensagem personalisada?


GOSTEI 0
Leonardobhbr

Leonardobhbr

26/01/2006

segue um exemplo


procedure ManipulaExcecoes(Sender: TObject; E: Exception);
begin
if E is EDBEngineError then begin//se o erro for bde
if ErrorCode = 9734 then
ShowMessage(´Este registro não pode ser removido, outros arquivos precisam dele.´)

end;
end;


Resumindo vc vai ter que ver os possiveis erros que sua aplicação pode retornar ou então procure dentro da pasta do delphi \Source\Vcl


os arquivos que contem o nome consts neles fica as mensagens de erro

traduza eles e recompile os arquivos


GOSTEI 0
POSTAR