Page 1 sur 1

IncludeFile / XIncludeFile

Publié : ven. 03/août/2018 6:53
par bombseb
Bonjour,

J'ai un petit soucis, j'ai deux fichiers .pb que j'inclue avec IncludeFile :

main.pb :

Code : Tout sélectionner

IncludeFile "A.pb"
IncludeFile "B.pb"
A.pb :

Code : Tout sélectionner

Fonction1 ()  ; Dans B.pb
B.pb

Code : Tout sélectionner

Fonction2 () ; Dans A.pb
Et il me dit "Module not found ..." (j'encapsule mes fonctions dans des modules)
J'ai éssayé en incluant B.pb avec XIncludeFile dans A.pb et pareil avec B.pb mais j'ai toujours le même problème.

Est-ce que quelqu'un peut m'aider svp ?

Re: IncludeFile / XIncludeFile

Publié : ven. 03/août/2018 7:06
par Marc56
Il te dit "Module not found" sans doute parce que ton module est appelé depuis une procédure et que celle-ci est inconnue au moment de la compilation.

XIncludeFile ou IncludeFile ne font que coller ensemble des fichiers au moment de la compilation.
L'ordre des procédures doit donc être respecté ou celles-ci doivent être déclarées avant leur utilisation

Il suffit de déclarer les procédures avant les Includes.

Code : Tout sélectionner

EnableExplicit

Declare Fonction1()
Declare Fonction2()

IncludeFile "A.pb"
IncludeFile "B.pb"

; ...
PS.
- Par convention et pour la lisibilité, on colle la parenthèse ouvrante à la fonction. Mais tu peux faire comme tu veux.
- Il n'y a pas de fonction en PB, que des procédures, même si on les utilisent comme des fonctions.
- Rien n'oblige à mettre un IncludeFile au début d'un fichier
- On préfère XIncludeFile (voir l'aide)

Re: IncludeFile / XIncludeFile

Publié : ven. 03/août/2018 8:06
par boby
Pour éviter des soucis avec l'ordre des includes, une solution simple consiste à faire :
main.pb

Code : Tout sélectionner

IncludeFile "Declare.pbi"
IncludeFile "A.pbi"
IncludeFile "B.pbi"
Declare.pbi :

Code : Tout sélectionner

Declare Fonction1()
declare Fonction2()
A.pbi:

Code : Tout sélectionner

Fonction1 ()  ; Dans B.pb
B.pbi

Code : Tout sélectionner

Fonction2 () ; Dans A.pb

Re: IncludeFile / XIncludeFile

Publié : ven. 03/août/2018 8:37
par bombseb
Ok merci pour votre aide je prend note
Je vais tester ca tout à l'heure...

Re: IncludeFile / XIncludeFile

Publié : ven. 03/août/2018 8:39
par bombseb
Pour éviter des soucis avec l'ordre des includes, une solution simple consiste à faire : [...]
Et du coup pour les declareModule je les met aussi dans le Declare.pbi ?

Re: IncludeFile / XIncludeFile

Publié : ven. 03/août/2018 8:42
par bombseb
Bon effectivement ca marche bien mieux comme ca...

Du coup j'ai mis mes DeclareModule dans Declare.pbi...

merci pour votre coup de main :mrgreen: