Re: [delphi-br] Retornar a Linha Unit

2009-03-03 Por tôpico Walter Chagas (Bol)
Eric,

Eu já mexi com o .map. ele traz o erro mas muitas vezes o erro que ele aponta 
está na unit da VCL envolvida no problema e não diretamente na unit do seu 
projeto. Igual erros de banco de dados, o .map sempre aponta ou pra unit DB ou 
DBContrls...

[]s
 
 
Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
wchag...@bol.com.br
http://www.geocities.com/SiliconValley/Bay/1058
http://delphitocorporerm.blogspot.com/
MSN: whitesock...@hotmail.com
SKYPE: WalterChagasJr


  - Original Message - 
  From: Eric Roberto Darruiz 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Saturday, February 28, 2009 10:34 AM
  Subject: Re: [delphi-br] Retornar a Linha  Unit


  Oi Walter,

  Achar exatamente a linha, endereço de memória, nome do método e outras as 
informações detalhadas do erro é possível fazendo o parse do arquivo detalhado 
de compilação (*.map).

  Existem vários componentes gratuitos e open-source pela internet, então não 
vou dizer que este ou aquele é excelente, pois quando precisei disso, baixei 
uns 5 componentes que achei interessantes e montei o meu próprio para adaptar 
exatamente às minhas necessidades.

  Nosso colega Leonardo pode fazer o mesmo, buscando em repositórios conhecidos 
como o Torry Delphi Pages ou outros.

  Segue o link da busca do Google para consulta de alguns destes componentes: 
  
http://www.google.com.br/search?hl=pt-BRq=exception+%2Bmap+files+%2Bdelphi+componentbtnG=Pesquisarmeta=

  []'s

  ---
  === Eric Roberto ===
  MSN: eric...@hotmail.com
  Blog: http://cafenocodigo.blogspot.com/

  From: Walter Chagas (Bol) 
  Sent: Friday, February 27, 2009 2:32 PM
  To: delphi-br@yahoogrupos.com.br 
  Subject: Re: [delphi-br] Retornar a Linha  Unit

  Senhores,

  No Clipper isto era possível porque lá o codigo fonte era embutido compilado 
junto com o interpretador de comandos do DBase dentro de um executável. No caso 
do Delphi, que usa um compilador que gera instruções puras de maquina x86, não 
há como guardar o nome e o numero da unit que provocou erro. O nome da Unit e 
da rotina (Função ou procedure) ainda é possível. Vide a rotina abaixo que vos 
mando. Agora o numero exato da linha na unit, não tem como. Ou pelo menos eu 
nunca consegui achar isto.

  function GetUnitName(argObject: TObject): string;
  //
  // Pega o nome da unit aonde ocorreu o erro
  //
  begin
  if (argObject.ClassInfo  nil) then
  begin
  ptrTypeData := GetTypeData(argObject.ClassInfo);
  Result := ptrTypeData.UnitName;
  end;
  end;

  Screen.ActiveForm.Name - Nome do Form ativo no momento do erro.
  Screen.ActiveControl.Name - Nome do Controle ativo (Button, label, checkbox) 
no momento do erro.
  Screen.ActiveControl.MethodName() - Nome do método (função ou procedimento) 
aonde ocorreu o erro.

  []s

  Walter Alves Chagas Junior
  Belo Horizonte - MG - Brazil
  wchag...@bol.com.br
  http://www.geocities.com/SiliconValley/Bay/1058
  http://delphitocorporerm.blogspot.com/
  MSN: whitesock...@hotmail.com
  SKYPE: WalterChagasJr

  - Original Message - 
  From: Leonardo Quinino 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, February 27, 2009 11:04 AM
  Subject: Re: [delphi-br] Retornar a Linha  Unit

  Eu desistir de procurar isso no delphi, a unica coisa que ainda nao
  conseguir fazer em relacao ao clipper foi justamente isso, ( eu programei em
  clipper numa epoca jurassica) rs :)...

  a solucao foi rever meus conceitos e valores ahahah,,, usar mais try
  exception, mostrar as mensagens do erro exption E.ErroMessage.. etc

  gravar logs com telas no momento do erro...

  Mas realmente com a praticidade do clipper, nao encontrei,, talvez seja em
  funcao do tipo de ambiente de trabalho (dos / windows) ou talvez em relacao
  aos metodos de trabalho interno do delphi nao permitir essa informacao.

  Bem a minha opniao bem simploria do assunto é essa, mas posso estar falando
  por ignorancia (falta de conhecimento).

  Seria bom esse assunto, a solucao pode existir, se alguem tiver essa
  solucao,, nos poupe de uma theread sem fim... .r S:)) !!!

  2009/2/26 José Mário Silva Guedes jmariogue...@gmail.com

   Olá amigos...
  
   Passei o dia fazendo umas rotinas de LOGs e eis que surge a necessidade
   clássica: Pegar o nome da Unit e o número da linha.
  
   Pesquisei e achei o de sempre... Assert, arquivo MAP...
  
   Será que algum colega conseguiu resolver este tipo de necessidade? Algum
   expert ou componente resolve?
  
   Um forte abraço!
  
   --
   José Mário Silva Guedes
   Analista Programador Delphi
  
   [As partes desta mensagem que não continham texto foram removidas]
  
   
  

  -- 
  Leonardo Quinino

  [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]


  

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Retornar a Linha Unit

2009-02-28 Por tôpico Eric Roberto Darruiz
Oi Walter,

Achar exatamente a linha, endereço de memória, nome do método e outras as 
informações detalhadas do erro é possível fazendo o parse do arquivo detalhado 
de compilação (*.map).

Existem vários componentes gratuitos e open-source pela internet, então não vou 
dizer que este ou aquele é excelente, pois quando precisei disso, baixei uns 5 
componentes que achei interessantes e montei o meu próprio para adaptar 
exatamente às minhas necessidades.

Nosso colega Leonardo pode fazer o mesmo, buscando em repositórios conhecidos 
como o Torry Delphi Pages ou outros.

Segue o link da busca do Google para consulta de alguns destes componentes: 
http://www.google.com.br/search?hl=pt-BRq=exception+%2Bmap+files+%2Bdelphi+componentbtnG=Pesquisarmeta=

[]'s

---
=== Eric Roberto ===
MSN: eric...@hotmail.com
Blog: http://cafenocodigo.blogspot.com/


From: Walter Chagas (Bol) 
Sent: Friday, February 27, 2009 2:32 PM
To: delphi-br@yahoogrupos.com.br 
Subject: Re: [delphi-br] Retornar a Linha  Unit


Senhores,

No Clipper isto era possível porque lá o codigo fonte era embutido compilado 
junto com o interpretador de comandos do DBase dentro de um executável. No caso 
do Delphi, que usa um compilador que gera instruções puras de maquina x86, não 
há como guardar o nome e o numero da unit que provocou erro. O nome da Unit e 
da rotina (Função ou procedure) ainda é possível. Vide a rotina abaixo que vos 
mando. Agora o numero exato da linha na unit, não tem como. Ou pelo menos eu 
nunca consegui achar isto.

function GetUnitName(argObject: TObject): string;
//
// Pega o nome da unit aonde ocorreu o erro
//
begin
if (argObject.ClassInfo  nil) then
begin
ptrTypeData := GetTypeData(argObject.ClassInfo);
Result := ptrTypeData.UnitName;
end;
end;

Screen.ActiveForm.Name - Nome do Form ativo no momento do erro.
Screen.ActiveControl.Name - Nome do Controle ativo (Button, label, checkbox) 
no momento do erro.
Screen.ActiveControl.MethodName() - Nome do método (função ou procedimento) 
aonde ocorreu o erro.

[]s


Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
wchag...@bol.com.br
http://www.geocities.com/SiliconValley/Bay/1058
http://delphitocorporerm.blogspot.com/
MSN: whitesock...@hotmail.com
SKYPE: WalterChagasJr

- Original Message - 
From: Leonardo Quinino 
To: delphi-br@yahoogrupos.com.br 
Sent: Friday, February 27, 2009 11:04 AM
Subject: Re: [delphi-br] Retornar a Linha  Unit

Eu desistir de procurar isso no delphi, a unica coisa que ainda nao
conseguir fazer em relacao ao clipper foi justamente isso, ( eu programei em
clipper numa epoca jurassica) rs :)...

a solucao foi rever meus conceitos e valores ahahah,,, usar mais try
exception, mostrar as mensagens do erro exption E.ErroMessage.. etc

gravar logs com telas no momento do erro...

Mas realmente com a praticidade do clipper, nao encontrei,, talvez seja em
funcao do tipo de ambiente de trabalho (dos / windows) ou talvez em relacao
aos metodos de trabalho interno do delphi nao permitir essa informacao.

Bem a minha opniao bem simploria do assunto é essa, mas posso estar falando
por ignorancia (falta de conhecimento).

Seria bom esse assunto, a solucao pode existir, se alguem tiver essa
solucao,, nos poupe de uma theread sem fim... .r S:)) !!!

2009/2/26 José Mário Silva Guedes jmariogue...@gmail.com

 Olá amigos...

 Passei o dia fazendo umas rotinas de LOGs e eis que surge a necessidade
 clássica: Pegar o nome da Unit e o número da linha.

 Pesquisei e achei o de sempre... Assert, arquivo MAP...

 Será que algum colega conseguiu resolver este tipo de necessidade? Algum
 expert ou componente resolve?

 Um forte abraço!

 --
 José Mário Silva Guedes
 Analista Programador Delphi

 [As partes desta mensagem que não continham texto foram removidas]

 


-- 
Leonardo Quinino

[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]



Re: [delphi-br] Retornar a Linha Unit

2009-02-27 Por tôpico Leonardo Quinino
Eu desistir de procurar isso no delphi, a unica coisa que ainda nao
conseguir fazer em relacao ao clipper foi justamente isso, ( eu programei em
clipper numa epoca jurassica)  rs :)...

a solucao foi rever meus conceitos e valores ahahah,,,  usar mais try
exception, mostrar as mensagens do erro exption   E.ErroMessage..  etc

gravar logs com telas no momento do erro...


Mas realmente com a praticidade do clipper, nao encontrei,, talvez seja em
funcao do tipo de ambiente de trabalho (dos  / windows) ou talvez em relacao
aos metodos de trabalho interno do delphi nao permitir essa informacao.

Bem a minha opniao bem simploria do assunto é essa, mas posso estar falando
por ignorancia (falta de conhecimento).

Seria bom esse assunto, a solucao pode existir, se alguem tiver essa
solucao,, nos poupe de uma theread sem fim... .r S:)) !!!

2009/2/26 José Mário Silva Guedes jmariogue...@gmail.com

   Olá amigos...

 Passei o dia fazendo umas rotinas de LOGs e eis que surge a necessidade
 clássica: Pegar o nome da Unit e o número da linha.

 Pesquisei e achei o de sempre... Assert, arquivo MAP...

 Será que algum colega conseguiu resolver este tipo de necessidade? Algum
 expert ou componente resolve?

 Um forte abraço!

 --
 José Mário Silva Guedes
 Analista Programador Delphi

 [As partes desta mensagem que não continham texto foram removidas]

  




-- 
Leonardo Quinino


[As partes desta mensagem que não continham texto foram removidas]



Res: [delphi-br] Retornar a Linha Unit

2009-02-27 Por tôpico Andre Luis Silveria
tenta usar o madexcept





De: Leonardo Quinino leonardo.quin...@gmail.com
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 27 de Fevereiro de 2009 11:04:44
Assunto: Re: [delphi-br] Retornar a Linha  Unit


Eu desistir de procurar isso no delphi, a unica coisa que ainda nao
conseguir fazer em relacao ao clipper foi justamente isso, ( eu programei em
clipper numa epoca jurassica)  rs :)...

a solucao foi rever meus conceitos e valores ahahah,,,  usar mais try
exception, mostrar as mensagens do erro exption   E.ErroMessage. .  etc

gravar logs com telas no momento do erro...

Mas realmente com a praticidade do clipper, nao encontrei,, talvez seja em
funcao do tipo de ambiente de trabalho (dos  / windows) ou talvez em relacao
aos metodos de trabalho interno do delphi nao permitir essa informacao.

Bem a minha opniao bem simploria do assunto é essa, mas posso estar falando
por ignorancia (falta de conhecimento) .

Seria bom esse assunto, a solucao pode existir, se alguem tiver essa
solucao,, nos poupe de uma theread sem fim... .r S:)) !!!

2009/2/26 José Mário Silva Guedes jmarioguedes@ gmail.com

   Olá amigos...

 Passei o dia fazendo umas rotinas de LOGs e eis que surge a necessidade
 clássica: Pegar o nome da Unit e o número da linha.

 Pesquisei e achei o de sempre... Assert, arquivo MAP...

 Será que algum colega conseguiu resolver este tipo de necessidade? Algum
 expert ou componente resolve?

 Um forte abraço!

 --
 José Mário Silva Guedes
 Analista Programador Delphi

 [As partes desta mensagem que não continham texto foram removidas]

 


-- 
Leonardo Quinino

[As partes desta mensagem que não continham texto foram removidas]


   


  Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Retornar a Linha Unit

2009-02-27 Por tôpico Walter Chagas (Bol)
Senhores,

No Clipper isto era possível porque lá o codigo fonte era embutido compilado 
junto com o interpretador de comandos do DBase dentro de um executável. No caso 
do Delphi, que usa um compilador que gera instruções puras de maquina x86, não 
há como guardar o nome e o numero da unit que provocou erro. O nome da Unit e 
da rotina (Função ou procedure) ainda é possível. Vide a rotina abaixo que vos 
mando. Agora o numero exato da linha na unit, não tem como. Ou pelo menos eu 
nunca consegui achar isto.


function GetUnitName(argObject: TObject): string;
//
// Pega o nome da unit aonde ocorreu o erro
//
begin
  if (argObject.ClassInfo  nil) then
  begin
ptrTypeData := GetTypeData(argObject.ClassInfo);
Result := ptrTypeData.UnitName;
  end;
end;


Screen.ActiveForm.Name - Nome do Form ativo no momento do erro.
Screen.ActiveControl.Name - Nome do Controle ativo (Button, label, checkbox) 
no momento do erro.
Screen.ActiveControl.MethodName() - Nome do método (função ou procedimento) 
aonde ocorreu o erro.


[]s
 
 
Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
wchag...@bol.com.br
http://www.geocities.com/SiliconValley/Bay/1058
http://delphitocorporerm.blogspot.com/
MSN: whitesock...@hotmail.com
SKYPE: WalterChagasJr


  - Original Message - 
  From: Leonardo Quinino 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Friday, February 27, 2009 11:04 AM
  Subject: Re: [delphi-br] Retornar a Linha  Unit


  Eu desistir de procurar isso no delphi, a unica coisa que ainda nao
  conseguir fazer em relacao ao clipper foi justamente isso, ( eu programei em
  clipper numa epoca jurassica) rs :)...

  a solucao foi rever meus conceitos e valores ahahah,,, usar mais try
  exception, mostrar as mensagens do erro exption E.ErroMessage.. etc

  gravar logs com telas no momento do erro...

  Mas realmente com a praticidade do clipper, nao encontrei,, talvez seja em
  funcao do tipo de ambiente de trabalho (dos / windows) ou talvez em relacao
  aos metodos de trabalho interno do delphi nao permitir essa informacao.

  Bem a minha opniao bem simploria do assunto é essa, mas posso estar falando
  por ignorancia (falta de conhecimento).

  Seria bom esse assunto, a solucao pode existir, se alguem tiver essa
  solucao,, nos poupe de uma theread sem fim... .r S:)) !!!

  2009/2/26 José Mário Silva Guedes jmariogue...@gmail.com

   Olá amigos...
  
   Passei o dia fazendo umas rotinas de LOGs e eis que surge a necessidade
   clássica: Pegar o nome da Unit e o número da linha.
  
   Pesquisei e achei o de sempre... Assert, arquivo MAP...
  
   Será que algum colega conseguiu resolver este tipo de necessidade? Algum
   expert ou componente resolve?
  
   Um forte abraço!
  
   --
   José Mário Silva Guedes
   Analista Programador Delphi
  
   [As partes desta mensagem que não continham texto foram removidas]
  
   
  

  -- 
  Leonardo Quinino

  [As partes desta mensagem que não continham texto foram removidas]


  

[As partes desta mensagem que não continham texto foram removidas]



[delphi-br] Retornar a Linha Unit

2009-02-26 Por tôpico José Mário Silva Guedes
Olá amigos...

Passei o dia fazendo umas rotinas de LOGs e eis que surge a necessidade
clássica: Pegar o nome da Unit e o número da linha.

Pesquisei e achei o de sempre... Assert, arquivo MAP...

Será que algum colega conseguiu resolver este tipo de necessidade? Algum
expert ou componente resolve?

Um forte abraço!

-- 
José Mário Silva Guedes
Analista Programador Delphi


[As partes desta mensagem que não continham texto foram removidas]