Fórum Erro em tempo de execução #219051
08/03/2004
0
Como faço para retornar o erro em tempo de execução
exemplo: qual a linha que deu erro, nome do form, nome da unit
isso é possível no Delphi?
exemplo: qual a linha que deu erro, nome do form, nome da unit
isso é possível no Delphi?
Mfrinfo
Curtir tópico
+ 0
Responder
Posts
08/03/2004
Beppe
Existe um tipo de exceção que armazena estes dados, como nome do arquivo e linha. Usamos o método Assert para isso. O método verifica uma condição, se for False, a mensagem é mostrada.
equivale a:
Mas somente a primeira forma exibe as informações que você quer.
Para as exceções que são geradas pela VCL, que não são via Assert, é mais difícil, mas não impossível. Existem componentes que recuperam alguns dados a partir do endereço do erro. Você encontra na RTL do Jedi, por exemplo.
Assert(Form <> nil, ´Condição inválida´);
equivale a:
if Form = nil then raise EAssertionFailed.Create(´Condição inválida´);
Mas somente a primeira forma exibe as informações que você quer.
Para as exceções que são geradas pela VCL, que não são via Assert, é mais difícil, mas não impossível. Existem componentes que recuperam alguns dados a partir do endereço do erro. Você encontra na RTL do Jedi, por exemplo.
Responder
Gostei + 0
10/03/2004
Khundalini
Use a JediVCL. Ela tem a JCL(Jedi Component Library), que é uma coleção de componentes não-visuais para as mais diversas utilidades. Ela, além de fornecer units para interceptar exceções (inclusive mostrando o tipo de informação que vc quer), fornece uma caixa de diálogo padrão para que, sempre que uma exceção ocorrer, ela seja mostrada com as informações sobre a Exceção.
[]s
Rubem Rocha
Manaus, AM
[]s
Rubem Rocha
Manaus, AM
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)