Jump to content
Fivewin Brasil

A ordem dos #INCLUDE altera a compilação?


Orlando FMC

Recommended Posts

Mestres,


Tenho vários sistemas funcionando, com uma estrutura sempre parecida com a seguinte:



Agenda.PRG // programa principal

A.PRG // diversas Procedures / funções do programa específico

B.PRG // diversas Procedures / funções do programa específico

C.PRG // diversas Procedures / funções do programa específico

D.PRG // diversas Procedures / funções do programa específico

E.PRG // diversas Procedures / funções do programa específico

ARQS.PRG // estruturas dos arquivos de dados (.dbf)

C:\APLIC\FUNCOES_INI.PRG // diversas funções de inicialização comuns a todos os sistemas

C:\APLIC\FUNCOES_ACE.PRG // diversas funções acessórias comuns a todos os sistemas

DSAY.PRG


No final do programa principal (no caso, AGENDA.PRG), coloco (todos os sistemas são assim):


#INCLUDE "C:\APLIC\FUNCOES_INI.PRG"

#INCLUDE "C:\APLIC\FUNCOES_ACE.PRG"

#INCLUDE "DSAY.PRG"

#INCLUDE "ARQS.PRG"

#INCLUDE "A.PRG"

#INCLUDE "B.PRG"

#INCLUDE "C.PRG"

#INCLUDE "D.PRG"

#INCLUDE "E.PRG"


procedure AppSys // XBase++ absurd requirement

return



De alguns dias para cá, não sei por que, para este programa (AGENDA), está dando problema na compilação:


Error: Unresolved external ´_HB_FUN_DL_ANV´ referenced from C:\APLIC\AGENDA13\AGENDA.OBJ

Error: Unresolved external ´_HB_FUN_FP´ referenced from C:\APLIC\AGENDA13\AGENDA.OBJ


As duas funções (DL_ANV e FP) exitem e estão respectivamente no programas D.PRG e E.PRG.


Se eu mudo a ordem dos #INCLUDE, como a seguir,


#INCLUDE "C:\APLIC\FUNCOES_INI.PRG"

#INCLUDE "C:\APLIC\FUNCOES_ACE.PRG"

#INCLUDE "DSAY.PRG"

#INCLUDE "ARQS.PRG"

#INCLUDE "D.PRG" // <--- mudei de lugar

#INCLUDE "A.PRG"

#INCLUDE "B.PRG"

#INCLUDE "E.PRG" // <--- mudei de lugar

#INCLUDE "C.PRG"


assim a compilação transcorre normalmente, no entanto, as funções que estão em C.PRG não funcionam.


Isto está acontecendo só agora, e só neste sistema (AGENDA).


Pergunta-se:

1 - Por que a ordem dos #INCLUDE altera a compilação?

2 - Por que as funções de C.PRG deixaram de funcionar?


Link to comment
Share on other sites

Orlando

Bom dia

Não sei o por que do problema ter resolvido, mas não trabalho com os PRG´s listados em include.

Trabalho da mesma forma, um programa principal e os demais com as funções, mas não é necessário coloca-los como include no principal.

Somente listo os programas na BAT de compilação, no meu caso utilizo o xDev.

Normalmente utilizo Include para determinar o uso de alguma classe da FW, pois se a DSay.ch não estiver setada na FiveWin.ch e eu utilizar no sistema irá ocorrer erro. Mas para os demais sistemas não trabalho desta forma.

Att

João Bosco

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...