API et DLL

Kevb37 Messages postés 19 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 10 décembre 2005 - 18 août 2003 à 19:52
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 - 19 août 2003 à 07:39
Qui pourrait m'expliquer ce que sont les DLL et les API dont on parle si souvent... si vous pouver m'expliquer comment elles fonctionnent en même temps ce serai sympa. MERCI d'avance

KEVIN

2 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
19 août 2003 à 02:07
Une DLL (Dynamic Link Library), est, comme son nom l'indique (en anglais) une bibliothèque contenant une ou plusieurs fonctions, programmées dans un but précis. Le fait de programmer une fonction (celle qui permet d'émettre un beep via le HP du pc, par exemple) dans une DLL et non pas dans un programme proprement dit offre un gros avantage : Si un autre programmeur a besoin de la même fonctionnalité pour un autre programme, il a pas besoin de réinventer la roue : Il utilise la fonction de la DLL qui fait ce qu'il cherche à faire.
Pour ce qui est des API (Application Programming Interface) c'est un autre nom que l'on donne aux fonctions des DLL que le gentils Billou nous offre avec Windows. Mais c'est exactement la même chose. A noter que la quasi-totalité des fonctionnalités de Windows (Accès au registe, au systeme de fichier, aux élément graphique - fenêtre, menu, ...- ) peuvent être géré via des API donc des DLL (kernel32.dll par exemple) : C'est d'ailleur comme cela que fonctionne Windows : les prog de Windows font appel aux DLL (elles ont été écrites pour eux, mais on s'en sert dans nos prog à nous qu'on fait)
En général, une DLL/API est écrite en C/C++ car c'est un langage très rapide après compilation, ce quinous pose parfois des souci qd on utilise une DLL depuis VB, les convention sur les string par exemple etant différente en VB et en C. Mais on y arrive toujours (enfin, des fois on fini chauve avant !!)
Pour démystifier totalement les API, va donc voir un APIViewer, qui te permet de voir l'appel à faire pou rutiliser telle ou telle fonction API. Et surtout, n'utilise pas l'APIViewer fourni avec VB6 car les déclarations de fonctions fournies avec date de Win95 !!! Va plutôt downloader "API-Viewer" et "API-Guide" (plein d'exemple simple ds celui-la) sur http://www.allapi.net : C EST FREEWARE EN PLUS .... (bon mais en anglais)
Voila j'espère avoir répondu à ta question ?

Christophe R.

P.S. : C'est pour cela que qd tu efface une dll de ton PC, t'as parfois plusieurs appli qui ne marche plus (Essaye de supprimer tout ce qui se nomme *.dll sous ton "system32", et on va rire .... LE FAIT PAS HEIN !!!!!!!!!! J'DECONNAIS !!!!!!!!
(y en a que tu pourais pas supprimer car Windows les utilises, ou un autre prog (IE ?) et d'autre qui s'effacerait et dont l'absence finirait d'achever ton Windoz au prochain reboot

P.S. du P.S. : Ma réponse est longue mais le sujet est énorme en fait !!!
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
19 août 2003 à 07:39
8-) Neodante 8-)

Juste pour compléter crenaud, une DLL ça peut-être en fait en VB également ! mais aussi en n'importe quel autre langage : Pascal, ... on s'en sert souvent d'interface pour rassembler tous les éléments d'un projet écrit en plusieurs langages !
@+
0
Rejoignez-nous