debug pára sempre na linha errada

Delphi

20/08/2009

Bom dia pessoal,

Eu to trabalhando com delphi 2007 e ele está com um sintoma estranho.
Quando coloco um breakpoint, o debug nunca pára na linha correta.
Ex:

if (cbxProcesso.Text=´ ´) or (cbxProcesso.Text=´´) then
ShowMessage(´Informe o Processo´)
else
begin
if copy(CBXPROCESSO.TEXT,1,1) = ´4´ then
TABELA:= ´RECEITAFECHAMENTO´
ELSE
if (copy(CBXPROCESSO.TEXT,1,1) = ´2´) OR (copy(CBXPROCESSO.TEXT,1,1) = ´3´) THEN
TABELA:=´TRAFEGO´;

se coloco o breakpoint na primeira linha, quando para ele já estará na sexta linha. Na verdade ele mostra a linha onde coloquei, mas vou dar f8, por exemplo, e vejo q esta em outro ponto, nunca a linha q está marcada é onde está passando realmente.
Não está dando nenhum erro, mas dificulta bastante o debug.

alguém já passou por isso com delphji?


Etspaz

Etspaz

Curtidas 0

Respostas

Daniel Grillo

Daniel Grillo

20/08/2009

Cara, isso de vez em quando acontece comigo.

Eu faço o seguinte: Eu recorto a procedure ou function e coloco no começo do arquivo .pas. Logo após o implementation.

Veja se vai funcionar contigo. Comigo dá certo.


GOSTEI 0
Etspaz

Etspaz

20/08/2009

opa blz, Daniel ,

o problema é que está acontecendo em qualquer ponto de um fonte.
percebi que é um fonte apenas de um projeto.
mas vlw!


GOSTEI 0
Rodc

Rodc

20/08/2009

Quando acontece isso eu dou um Build no projeto, pois as vezes o Make não compila alguma alteração.


GOSTEI 0
Josehenrique

Josehenrique

20/08/2009

Já tive problema semelhante e a solução foi:

Pesquise no seu computador qualquer arquivo *.dcu com o nome da unit que vc está usando e apague.

Exemplo: uMinhaUnit.pas ...pesquise uMinhaUnit.dcu, e apague, de um build no projeto e resolvido. (pelo menos para mim resolveu).


GOSTEI 0
Josehenrique

Josehenrique

20/08/2009

Já tive problema semelhante e a solução foi:

Pesquise no seu computador qualquer arquivo *.dcu com o nome da unit que vc está usando e apague.

Exemplo: uMinhaUnit.pas ...pesquise uMinhaUnit.dcu, e apague, de um build no projeto e resolvido. (pelo menos para mim resolveu).


GOSTEI 0
Rodc

Rodc

20/08/2009

Apagar os DCUs e fazer um Build (teoricamente) é a mesma coisa. Quando você apaga os DCUs o compilador é forçado a recompilar todas as units, que é o que o Build faz.


GOSTEI 0
Osocram

Osocram

20/08/2009

Alguns motivos que podem causar isso (que eu ja tive)

1) Unit mto grande.. não lembro apartir de qtas linhas o delphi (pelo menos até o Delphi 7 isso acontecia) se perdia.
- Para debugar copie e cole o codigo que quer debugar para o começo da unit

2) O delphi esta compilado em uma versão da unit e vc esta debugando em outra. Limpar as versões erradas do seu pc. Tenha certeza que esta compilando a versão certa e que o delphi esta olhando p a dcu certa (exatamente o que o amigo josehenrique comentou)

3) Vc pode tenar algo tbm.... Menu > Project > Option > Linker > Max Stack Size e tentar deixar o maior numero possivel la. (os numeros são em hex).


GOSTEI 0
POSTAR