Question de débutant- Fichier .pbi .res .lib et dll [Resolu]

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
pastor
Messages : 54
Inscription : sam. 14/avr./2007 22:59

Question de débutant- Fichier .pbi .res .lib et dll [Resolu]

Message par pastor »

Bonjour à tous,

Voila encore des questions de débutant :oops: :

1. A quoi servent les fichier .pbi - Comment peut-on les utiliser ?

2. A quoi servent les fichiers .res situés dans \PureBasic\Residents ?

3. Quelle différence entre les fichiers .lib et les dll ?

4. Lorsque l'on a des fonctions réutilisables dans plusieurs progs, et que l'on place ces fonctions dans un fichier externe, que vaut-il mieux : utiliser : des includes, des dll, ou autre chose ?

Voila, vous pouvez sonder mon niveau d'incompréhension et d'ignorance 8O ...

Laurent
Dernière modification par pastor le mer. 25/avr./2007 21:33, modifié 1 fois.
tmyke
Messages : 1554
Inscription : lun. 24/juil./2006 6:44
Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E

Message par tmyke »

T'en fait pas, on a tous été des débutants, donc c'est normal.

Les fichiers '.pbi' sont en fait des fichiers PB comme les fichier '.PB'. On leur
donne cette extension souvent pour signifier qu'il s'agit de fichiers particuliers,
Include par exemple, ou l'on y met tout un tas de déclarations par exemple. C'est
une convention tout simplement. C'est fichier pourraient etre renomé '*.pb' cela fonctionnerait
tout aussi bien.

Pour ce qui est des DLL et lib. En fait, ce sont des librairies, de deux types différent.

Les DLL (Dynamic Link Library) représente un ensemble de fonctions, qui sont accéssible
par plusieurs programme en meme temps durant lors execution. Lors du lancement d'une application,
si celle-ci a besoin de fonctions qui se trouve dans une DLL, la DLL est chargé en mémoire, et l'appli
peut alors effectuer les appel au fonctions qui sont contenu dans la DLL. D'autre appli
peuvent elle aussi en meme temps faire des appel de fonction auprès de cette DLL, d'ou
l'avantage. Par exemple, DX9 se présente sous forme de DLLs, et pas mal de programmes
y font appel, souvent de façon simultané...
(a savoir que les DLL sont spécifique a windows)

Les Lib (Librairie) ont elle un status différent. On les appelles plus communément les
librairie statique. Quand tu écris un programme, et que tu as besoins de fonctions externes
a ton programme et qui existe déjà, tu peux demander a ton programme lorsqu'il est
compilé d'integrer ces fonctions existantes au sein de ton pgm. Pas sous forme de code,
mais sous forme de procedure d'appel. Le compilateur va alors chercher les petit bout
de code qui te sont nescessaire dans la librairie que tu lui a désigné et l'ajoute au tien
(dans ce que l'on appelle la phase de linkage).

Voila, c'est court, mais j'espère que je ne t'ai plus embrouillé qu'autre chose...
Force et sagesse...
Avatar de l’utilisateur
Progi1984
Messages : 2659
Inscription : mar. 14/déc./2004 13:56
Localisation : France > Rennes
Contact :

Message par Progi1984 »

Les fichiers res sont des fichiers de ressources. Ils peuvent contenir un ensemble de constantes, structures et macros.
minirop
Messages : 321
Inscription : mer. 02/août/2006 21:06

Message par minirop »

tmyke a écrit :Les Lib (Librairie) ont elle un status différent. On les appelles plus communément les librairie statique.
non, il y a .lib statiques et .lib dynamiques !
les libs statiques sont comme des fichiers sources que tu intègrerais dans ton fichier .exe (fonctions complètes)
les lib dynamiques font le lien entre ton fichier .exe et une DLL (seulement l'entête des fonctions)

.lib est Microsoft only, pour mingw/gcc et linux ce sont des fichiers .a
tmyke
Messages : 1554
Inscription : lun. 24/juil./2006 6:44
Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E

Message par tmyke »

Hmmm, je ne vais pourir ce post avec une querelle de termes.

Mon explication d'ensemble visait juste a dire que grocièrement
il y avait les Librairie Dynamiques (d'ou leur nom DLL) et les
Librairie statiques (.lib)
Maintenant dans la plupart des cas, une fichier .lib accompagne une
DLL afin de pouvoir linker avec cette dernière.

Aucune librairie possédant l'extension .lib n'est dynamique !

(merci Progi, j'avais oublié les res ;) )
Force et sagesse...
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Progi1984 a écrit :Les fichiers res sont des fichiers de ressources. Ils peuvent contenir un ensemble de constantes, structures et macros.
et tu peux utiliser le visualisateur de structures accessible depuis le menu outils pour voir ces structures et constantes.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
minirop
Messages : 321
Inscription : mer. 02/août/2006 21:06

Message par minirop »

tmyke a écrit :Aucune librairie possédant l'extension .lib n'est dynamique !
en faite le .lib signifiait library et non le fichier ayant pour extension .lib.
Et les fichiers .res peuvent contenir foule de trucs.
soit pour intégrer des fichiers en tant que ressources, contenir les menus, des chaines de caractères (cf darkbasic),...
tmyke
Messages : 1554
Inscription : lun. 24/juil./2006 6:44
Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E

Message par tmyke »

OK, Alors on c'est compris ;)
Force et sagesse...
Répondre