Création de DLL

Alexandra -  
 rajouta -
Bonjour,
Je souhaite créer une DLL en langage C mais je n'ai aucune idée pour démarrer.
Si quelqu'un pouvais me dire en gros comment ça marche et quelles sont les differentes étapes.
Merci beaucoup
A voir également:

2 réponses

zigwen
 
Salut,
personnellement je sais faire des DLL ou ActiveX (c'est pareil...) en Visual C++ ou Visual Basic. Si tu veux faire du C, il faut peut etre te dégoter un éditeur style Visual Studio ou Delphi qui permette de créer des DLL dans ce langage (peut etre Visual C++).
Donc sinon, une DLL c'est une bibiliothèque de fonctions et d'objets que tu vas développer dans un environnement Windows et que tu vas compiler.
Une fois compilée, ca te fait un beau monfichier.dll mais il faut que tu préviennes ton ordinateur que tu as créée cette DLL afin de pouvoir utiliser les objets ou fonctions que tu as créés.
Pour ce faire tu l'enregistres dans la base de registres (Démarrer/Exécuter/regsvr32 "c:\monfichier.dll").
tu peux maintenant créer un autre programme qui appelle les fonctionnalités de ta DLL en l'instanciant puis en lui demandant de traiter tes données.
C'est pas forcément super clair mais c'est pas forcément super facile non plus ;-)
Donc bon courage et @+.
Gwen
2
FraKtaL
 
Mouais...
Ce que dit zigwen, c surtout pour ActiveX
Et je suis desolé, ActiveX et DLL, c pas pareil.

Donc voila, si tu veut creer une DLL, faut deja savoir pourquoi. Quelles seront les fonctions que tu souhaite rendre publiques, est ce que une DLL est vraiment necessaire, etc.

Ensuite, tu fait un prog C normal, qui contient les fonctions que tu veut appeller.

Il faut aussi creer un fichier .def qui contient les noms de ces fonctions, afin que le compilateur sache quelles fonctions seront exportées, et quelles fonctions resteront privées. (Plus d'infos sur ces fichiers .def, cherhce dans l'aide de ton compilateur).

Ensuite, tu compiles ton prog normalement, et tu le link avec un switch special, genre /DLL.

Si ton truc est correctement compilé, tu obtient un fichier .dll et un fichier .lib

Apres, dans le programme qui utilise la dll, tu peut appeller les fonctions de ta DLL comme si c'etait des fonctions standard, mais il faut preciser au linker l'emplacement de ton fichier .lib, afin qu'il puisse "lier" ton prog a la dll

Pour que Windows puisse trouver ta DLL, t'a 2 solutions : Soit tu place la DLL dans le meme repertoire que le prog, soit tu place la DLL dans c:\windows\system\

Evidemment, la premiere solution est la plus "clean"
Le truc de regsrv ne concerne que les ActiveX

Bon, ces explications sont très resumées, j'ai sauté pas mal de détails importants, mais ça devrait t'aider a trouver la solution

A+
1
rajouta
 
Salut
j'ai un grand problème
je veux faire une application en vb.net qui fait créer une dll .merci bien de m'aider
Merci à tous
0