Debugador

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

rbonotto
Usuário Nível 3
Usuário Nível 3
Mensagens: 253
Registrado em: 06 Mai 2005 18:52

Debugador

Mensagem por rbonotto »

Ola pessoal,

Estou começando a usar o blinker junto com clipper5.2e . Antes usava o clipper 5.0 com o seu rtlink.

Uma coisa que usava muito é o debugado do clipper (CLD.EXE) compilando com /B e digitando CLD <nomeprog> e depois ALT+D para ir até o codigo fonte.
Mas com blinker não funciona ! faço igual e ao executar e pressionar ALT+D ele não entra no debugador....

Estou usando assim:

Código: Selecionar todos

DEMO.OBJ: DEMO.PRG
    CLIPPER DEMO       /M /B /P
X100A.OBJ: X100A.PRG
    CLIPPER X100A      /M /B /P
X100A1.OBJ: X100A1.PRG
    CLIPPER X100A1     /M /B /P
....
E um lnk assim:

Código: Selecionar todos

FI DEMO

BLINKER INCREMENTAL OFF
BLINKER EXECUTABLE CLIPPER //F:250
BLINKER PROCEDURE DEPTH 140
BLINKER EXECUTABLE NODELETE
BLINKER EXECUTABLE COMPRESS 1
BLINKER EXECUTABLE EXTENDED
SEARCH BLXCLP52
LIB clipper
LIB EXTEND
LIB DBFNTX
LIB TERMINAL
LIB CTP52
LIB MMENU

LIB clbc
LIB clbcmat
LIB ptool50
LIB ld50
LIB RELOGIO
LIB newget50

FILE X100A,X200A....

Alguém poderia dar um help ? :)Pos

abs,
mixsistemas@gmail.com
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Debugador

Mensagem por Maligno »

Inclua no seu script "FILE CLD.LIB". É como FILE mesmo e não como LIB. No programa coloque o gatilho no local onde quer a parada e execute. Ao chegar no ponto o CLD será invocado.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
rbonotto
Usuário Nível 3
Usuário Nível 3
Mensagens: 253
Registrado em: 06 Mai 2005 18:52

Re: Debugador

Mensagem por rbonotto »

Não entendi direito Maligno, o meu script ficaria:

Código: Selecionar todos

FI DEMO

BLINKER INCREMENTAL OFF
BLINKER EXECUTABLE CLIPPER //F:250
BLINKER PROCEDURE DEPTH 140
BLINKER EXECUTABLE NODELETE
BLINKER EXECUTABLE COMPRESS 1
BLINKER EXECUTABLE EXTENDED
SEARCH BLXCLP52
LIB clipper
LIB EXTEND
LIB DBFNTX
LIB TERMINAL
LIB CTP52
LIB MMENU

LIB clbc
LIB clbcmat
LIB ptool50
LIB ld50
LIB RELOGIO
LIB newget50

[b]FILE CLD.LIB[/b]
FILE X100A,X200A....
Mas como acionar durante a execução ?, não entendi como seria um gatilho para acionar o cld.exe...

Desculpe as burrices, mas sou novo com o blinker...
mixsistemas@gmail.com
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Debugador

Mensagem por Maligno »

O script está correto. O gatilho a que mencionei é o evento que vai parar o programa para entrar no debugger. Esse evento é o encontro da função AltD(), que você pode inserir em qualquer parte do programa, diversas vezes. Ela é o breakpoint ou gatilho. Quando encontrada, durante o fluxo de execução, o programa pára e a atividade passa a ser controlada pelo debugger.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
rbonotto
Usuário Nível 3
Usuário Nível 3
Mensagens: 253
Registrado em: 06 Mai 2005 18:52

Re: Debugador

Mensagem por rbonotto »

Coloquei assim:

Código: Selecionar todos

WHILE .T.
   AltD()
   tela(01,05,17,75)
   tela(17,05,20,75,'.')
   cab(04,05,75,' ACERVO CADASTRADO')
   cAmPo :={' TITULOS()'}
   DBGOTOP()
   DBEDIT(02,06,16,74,campo,'cT_fta',,,'-','¦')
   EXIT
END
SET KEY 18 TO
SET KEY  3 TO
CLOSE DATABASE
Mas ao passar por ali nada acontece.... :-o
mixsistemas@gmail.com
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Debugador

Mensagem por Maligno »

Se ao compilar você usa o switch /b, se no script do blinker você incluiu file cld.lib e se no programa você tem a função altd(), e ainda assim o debugger não entra, é de se supor que o programa não passe pelo local onde está a função altd(). Ao encerrar o programa, o debugger aparece?
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
rbonotto
Usuário Nível 3
Usuário Nível 3
Mensagens: 253
Registrado em: 06 Mai 2005 18:52

Re: Debugador

Mensagem por rbonotto »

Putz....que burrice a minha :%

Tinha colococado file cld.lib em outro programa....que jééééég rsrsrrs

Valeu, ta funcionando belezinha agora :-Y

Abração
mixsistemas@gmail.com
Responder