Senhores, Dá pra saber muita informação (procedimento, unit, objeto, em qual componente estava com foco, DLL's que estão sendo utilizadas, e muito mais) através do JclDebug que faz parte do projeto JEDI.
link de exemplo: http://programando.terapad.com/index.cfm?fa=contentNews.newsDetails&newsID=9978&from=list&directoryId=2861 Abraços Marcos Douglas 2008/5/29 Bruno Lichot <[EMAIL PROTECTED]>: > Tem algumas matérias e exemplos publicados sobre isso (Google, > activedelphi.com.br, clubedelphi.com.br, dn.codegear.com/br), e muita > coisa no help também. Em todo caso segue abaixo um código que pode ser usado > no evento onexception do aaplicationevents > > ShowMessage('Mensagem de Erro' + E.Message);//Exemplo de trabalhar com > mensagem de erro > {Application.ExeName; > Application.MainForm; > Application.ActiveFormHandle; > > //algumas informações que podem ser obtidas do application} > > //Sugestao de tratamento de erro de campo não preenchido e valores > invalidos > if Pos(UpperCase('must have a value'), UpperCase(E.Message)) <> 0 then > begin > Pos1:=Pos('''', E.Message); > mensagem:=E.Message; > Delete(mensagem, Pos1, 1); > Pos2:=Pos('''', mensagem); > mensagem:=copy(E.Message, Pos1 + 1, Pos2 - Pos1); > mensagem := 'É obrigatório o preenchimento do campo '+ mensagem + '.'; > showmessage(mensagem); > end > if Pos(UpperCase('is not a valid float'), UpperCase(E.Message)) <> 0 then > begin > Pos1 :=Pos('''', E.Message); > mensagem :=E.Message; > Delete(mensagem, Pos1, 1); > Pos2 := Pos('''', mensagem); > mensagem :=copy(E.Message, Pos1 + 1, Pos2 - Pos1); > mensagem := 'O valor '+ mensagem + ' não é válido.'; > showmessage(mensagem); > end > else if Pos(UpperCase('field value required'), UpperCase(E.Message)) <> 0 > then > begin > Pos1 :=Pos('column ', E.Message) + 7; > Pos2 :=Pos(',', E.Message); > mensagem :=copy(E.Message, Pos1, Pos2 - Pos1); > mensagem := 'Campo ' + mensagem + ' deve ser preenchido.'; > showmessage(mensagem); > end > > No meu link de downloads gratuitos praticamente todos os exemplos tem o > objeto Application events com alguns erros tratados deforma simples mas tem > bastante mensagens capturadas já. > > HTTP://cc.codegear.com/author/795118 > > Abraços > > BL > > From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] > On Behalf Of Onjahyr > Sent: quarta-feira, 28 de maio de 2008 23:27 > To: delphi-br@yahoogrupos.com.br > Subject: Re: [delphi-br] TApplicationEvents.OnException : como obter a > origem do erro > > > Esse tópico achei interessante! > > Bruno, vc poderia citar um exemplo simples (..."é bem simples") > utilizando a variável Exception? > > Blz. > > Em 28/05/08, Ricardo Lima<[EMAIL > PROTECTED]<mailto:rlmariz%40gmail.com<rlmariz%2540gmail.com>>> > escreveu: > > Bruno é possível pegar a unit e linha em que o erro ocorreu? > > > > Bruno Lichot escreveu: > >> > >> Através das variáveis de ambiente do próprio objeto application você > >> consegue "fotografar" sua aplicação no momento da exceção, é bem > >> simples. A variável Exception também te fornece várias informações > >> importantes sobre o erro. > >> > >> Abs > >> > >> BL > >> > >> From: delphi-br@yahoogrupos.com.br<mailto: > delphi-br%40yahoogrupos.com.br <delphi-br%2540yahoogrupos.com.br>> > >> <mailto:delphi-br%40yahoogrupos.com.br<delphi-br%2540yahoogrupos.com.br> > > > >> [mailto:delphi-br@yahoogrupos.com.br<mailto: > delphi-br%40yahoogrupos.com.br <delphi-br%2540yahoogrupos.com.br>> > >> <mailto:delphi-br%40yahoogrupos.com.br<delphi-br%2540yahoogrupos.com.br>>] > On Behalf Of Fellipe Henrique > >> Sent: terça-feira, 27 de maio de 2008 09:26 > >> To: > >> delphi-br@yahoogrupos.com.br<mailto:delphi-br%40yahoogrupos.com.br<delphi-br%2540yahoogrupos.com.br>> > <mailto:delphi-br%40yahoogrupos.com.br <delphi-br%2540yahoogrupos.com.br>> > >> Subject: Re: [delphi-br] TApplicationEvents.OnException : como obter a > >> origem do erro > >> > >> Tem o MadExcept que é gratuito.. ótimo também. > >> > >> []s > >> > >> 2008/5/27 Consultores Software <[EMAIL PROTECTED]<mailto: > consultoressoftware%40gmail.com <consultoressoftware%2540gmail.com>> > >> <mailto:consultoressoftware%40gmail.com<consultoressoftware%2540gmail.com> > ><mailto:consultoressoftware%40gmail.com<consultoressoftware%2540gmail.com> > >>: > >> > >> > Eu estive vendo sobre o EurekaLog. Me parece ser uma excelente > >> > ferramenta, > >> > mas......é pago :-( > >> > > >> > 2008/5/27 Gerson Machado <[EMAIL PROTECTED]<mailto: > gersonamach%40yahoo.com.br <gersonamach%2540yahoo.com.br>> > >> <mailto:gersonamach%40yahoo.com.br <gersonamach%2540yahoo.com.br> > ><mailto:gersonamach%40yahoo.com.br <gersonamach%2540yahoo.com.br> > ><gersonamach%40yahoo.com.br> > >> > >: > >> > > >> > > >> > > Eu particularmente uso o EurekaLog.v6.0.14, rapido, fácil, captura a > >> > > tela com o erro, pega todos os status de registradores, memória, > >> > variáveis e > >> > > me envia por email; muito bom. > >> > > Gerson > >> > > PS. Gera log de erro para analise posterior. > >> > > > >> > > > >> > > Consultores Software <[EMAIL PROTECTED]<mailto: > consultoressoftware%40gmail.com <consultoressoftware%2540gmail.com>> > >> <mailto:consultoressoftware%40gmail.com<consultoressoftware%2540gmail.com> > ><mailto:consultoressoftware%40gmail.com<consultoressoftware%2540gmail.com> > ><consultoressoftware%40gmail.com> > >> > <consultoressoftware%40gmail.com>> > >> > > escreveu: > >> > > > >> > > Bom dia pessoal ! > >> > > > >> > > Tenho na aplicação, um componente TApplicationEvents, onde uso o > >> evento > >> > > OnException para capturar quaisquer Exceptions do aplicativo. > >> > > Preciso saber se é possível obter a origem da Exception ( unit, > >> linha etc > >> > ) > >> > > Alguém sabe como ? > >> > > > >> > > Muito obrigado, desde já > >> > > > >> > > [As partes desta mensagem que não continham texto foram removidas] > >> > > > >> > > --------------------------------- > >> > > Abra sua conta no Yahoo! Mail, o único sem limite de espaço para > >> > > armazenamento! > >> > > > >> > > [As partes desta mensagem que não continham texto foram removidas] > >> > > > >> > > > >> > > > >> > > >> > [As partes desta mensagem que não continham texto foram removidas] > >> > > >> > > >> > > >> > >> -- > >> _________________________________ > >> T.·.F.·.A.·. > >> Fellipe Henrique > >> [EMAIL PROTECTED]<mailto:fellipeh%40gmail.com <fellipeh%2540gmail.com> > > > >> <mailto:fellipeh%40gmail.com <fellipeh%2540gmail.com>><mailto: > fellipeh%40gmail.com <fellipeh%2540gmail.com>> > >> > >> Sou a favor da lei LEI 607/2007 > >> > >> [As partes desta mensagem que não continham texto foram removidas] > >> > >> [As partes desta mensagem que não continham texto foram removidas] > >> > >> > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > ------------------------------------ > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > > > -- Marcos Douglas [As partes desta mensagem que não continham texto foram removidas]