GARANTIR DESCONTO

Fórum Unit não Aceita Breakpoints #394803

31/01/2011

0

Boa tarde!!
Estou com uma Unit que não esta aceitando break points somente uma todas as restantes funcionam normalmente,qualquer alteração que eu faço nesta Unit funciona.
o problema é que não aceita os break points a unica "Bolinha Azul" que aparece é no End.
Já efetuei Build, Build All, Compille, removi e add novamente no projeto e nada.
a Unit está com 4275 Linha
Delphi 7
Nunca foi feito alteração nas configurações de debug, mas relenbrando as outras units aceitam normal os BP.
Alguma possível solução?
Timuio

Timuio

Responder

Post mais votado

21/11/2012

desculpa por reviver tópicos antigos, mas acho que é curiosidade de muitos isso, então resolvi responder...

é bug do delphi 7 isso, ele não consegue debugar quando tem MUITOS componentes adicionados na unit... não sei a quantidade exata de componentes, mas vi em um tópico do stackoverflow (nao lembro qual) um cara que achou a solução desse jeito...

ele foi excluindo vários componentes, e acabou que deu certo, e quando ele colocava mais componentes voltava a acontecer de não debugar.


não fiz o mesmo teste que ele, mas fazendo o teste com um componente igual em outra unit menor, funcionou normal.

espero que tenha esclarecido.

[]s

Rômulo Contro

Romulo Contro

Romulo Contro
Responder

Gostei + 1

Mais Posts

31/01/2011

Marco Salles

Solução não . Sugestão   Dê uses a esta unidade . O Compilador do delphi ele é suficientemente inteligente para perceber qnd algo que não será utilizado portanto não precisa de ser compilado   Defina uses e chame um mpetodo desta unidade   Verifique se esta Unidae faz parte do Projeto   O Delphi não esta bugado , pq ele esta compilado as demais  
Responder

Gostei + 0

01/02/2011

Timuio

A Unit que me refiro é na verdade meu DataModule todos meus datasets da parte de vendas estão dentro desta Unit e existem muitos evento que chamam ela, por exemplo 
ClientDataSetVenda BeforePost... Entre outras
Toda alteração nela funciona perfeita, e caso de erros o sistema tambem gera exceções porem não consigo acompanhar nos Break points porque não esta aceitando.
Será alguma conexão que esteja faltando? 
Responder

Gostei + 0

01/02/2011

Marco Salles

Coloque o Breakpoint no dataModulo e compile a unit ou o programa .. Verifique se a linha onde esta o Breakpoint esta Verde ou azulada auqlquer coisa post o pequeno trecho de codigo e mostre aonde vc esta marcando este Breakpoint
Responder

Gostei + 0

01/02/2011

Timuio


 
Responder

Gostei + 0

01/02/2011

Timuio

http://img227.imageshack.us/f/errold.png/
 

Link da Imagem com o erro
Responder

Gostei + 0

01/02/2011

Marco Salles

Se vc observar ele esta marcada com a linha verde e todas instruçoes não estão marcadas com a bolinha azul do Delphi(tem um nome tecnico agora me foge a cabeça ) . Isto indica que o delphi não compilou esta Unidade ou especificamente este fragmento de codigo postado . De duas uma Ou não necessita dela ou o  debug information no "project options" esta desmarcado . Toda Unidade esta assim ou somente esta parte do DataModulo ???  
Responder

Gostei + 0

01/02/2011

Timuio

Toda esta Unit está assim
em Project > Options  a Opção Linker esta para gerar as DCU
em Compiler todos os checks de Debugging está marcado exceto Use Debug Dcu, já marquei este tbm anteriormente e n afetou, 
en Source Path o caminho está correto para todas Units de meu projeto e BPL outuPut Directory tbm
e em Debbuger Options está $(DELPHI)\Lib\Debug no Debug Path
Obs: O problema com apenas esta Unit acontece se executar o projeto em outros computadores com o delphi tbm. 
Responder

Gostei + 0

01/02/2011

Wilson Junior

Análise estes pontos:
  - A sua unit DmComerc está sendo criada;
  - Este evento está sendo chamado em algum momento;
  - Esta unit está adicionada no projeto.

Espero ter colaborado.
Responder

Gostei + 0

01/02/2011

Emerson Nascimento

Análise estes pontos:
  - A sua unit DmComerc está sendo criada;
  - Este evento está sendo chamado em algum momento;
  - Esta unit está adicionada no projeto.

Espero ter colaborado.


veja o segundo item citado pelo Paulista. talvez o evento OnNewRecord do cdsVenda_Item não esteja ligado à procedure.

Responder

Gostei + 0

01/02/2011

Marco Salles

 
veja o segundo item citado pelo Paulista. talvez o evento OnNewRecord do cdsVenda_Item não esteja ligado à procedure.


é o que estou batendo na tecla desde do incinio . O Compilador do Delphi é inteligente e otimiza o processo    
Responder

Gostei + 0

01/02/2011

Timuio

Obrigado por estarem tentando me ajudar a resolver este problema, mas pelo visto não estou explicando direito a situação
Não é o Evento q eu demonstrei na Imagem q ta dando erro e sim
toda e qualquer Linha desta Unit Chamanda UnDmComerc, até se eu colocar um ShowMessage Num Form1 que Usa a Unit UnDmComerc exibindo um "Hello Word" este código ira executar sem problemas
só que eu não vo conseguir usar o Breakpoint antes da mensagen ser disparada
Procedure TDmComerc.ExibirShowMessage( ExibaMensagem: Boolean );begin  if ExibaMensagem then    ShowMessage( "Hello Word" ) ; end;
no Begin ou no IF deveria aceitar o break point, simplimente não aceita...
estou usando a unit sim, meu projeto está divido em BPLs, com diferente niveis para não dar referencia cruzada
so estou com esse probleminha ainda sem solução.
Responder

Gostei + 0

01/02/2011

Wilson Junior

Mas manda o Leandro da uma mão aí....hehehhe
Dá uma olhada nas opções do projeto e veja se a BPL não foi retirada dos pacotes (Packages) das quais o executável precisa...

Espero ter colaborado.

Abraços.

Responder

Gostei + 0

01/02/2011

Marco Salles

Se vc colocar um Novo DataModule neste Projeto , este novo DataModule aceira breakPoint ou não Procedure TDmNOVOComerc.ExibirShowMessage( ExibaMensagem: Boolean ); begin   if ExibaMensagem then     ShowMessage( "Hello Word" ) ;  end;     ??????????
Responder

Gostei + 0

01/02/2011

Timuio

Adicionei um novo DataModule e inclui na mesma Bpl, utilizei as mesmas chamadas do anterior e aceita sim o BP.

Responder

Gostei + 0

01/02/2011

Marco Salles

então é alguma coisa no cabeçalho deste teu DataModulo , que esta incorreto . Mais provavelmente entre o Interface e a Implementation causando esta incoerencia por parte do delphi migre o seu codigo lentamente e tente fazer estas comparaçoes ..
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar