Créer une dll à partir d'un .h et du lib correspondant
z_san
Messages postés80Date d'inscriptionjeudi 2 février 2006StatutMembreDernière intervention24 mai 2007
-
3 mars 2006 à 14:53
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 2007
-
25 mars 2006 à 20:02
Bonjour à tous,
Voilà dans le cadre d'uen grosse application, je dois utiliser un .h et un .lib mis à dispo par quelqu'un d'autre, l'application que nous développons sera en c#, pour pouvoir utiliser ce .h j'ai besoin d'en faire une dll pour l'utiliser dans l'appli finale hélas je ne sais plus comment faire.
SAKingdom
Messages postés3212Date d'inscriptionlundi 7 novembre 2005StatutMembreDernière intervention16 février 200915 3 mars 2006 à 22:43
Généralement, le header (.h) ne contient que les fonctions qui peuvent être utiliser avec la librarie et non pas la source du DLL. Ce que je veut dire c'est que si tu n'a que le nom des fonctions et leurs paramètres dans ton header, c'est impossible de faire un DLL avec ça, c'est fait pour utiliser la librairie qui elle va te linker au DLL qui est déjà créé quelque part.
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 3 mars 2006 à 22:50
Je pense qu'il parle d'une .lib librairie statique et pas une librairie de link avec une dll. Je pense qu'il faut que tu recrée la DLL toi-même
Exemple : Tu as dans le .h une fonction nommée MaFonctionLib() et qui est définie dans la lib MaFonction.lib. Tu crée ta DLL qui s'appelle MaFonction.dll et tu met comme code dedans :
void MaFonctionDll()
{
MaFonctionLib();
}
Comme ça tu va avoir le code de la lib statique ds ta dll.
z_san
Messages postés80Date d'inscriptionjeudi 2 février 2006StatutMembreDernière intervention24 mai 2007 13 mars 2006 à 09:29
Re bonjour à tous !
Oui je vois ce que vous voulez dire j'ai créé une bibliothéque de classe sous v C++ express, qui utilise le .h en question. Le soucis est que je vois bien dans l'explorateur de référence les différentes constantes déclarées (enum struct, etc....) dans le fichier entête, mais je ne vois pas les fonctions. La génération de la dll se passe bien mais quand j'utilise cette dll dans un source C# je ne vois rien....
J'avoue sécher un peu la
Merci de votre aide.
Z.
Vous n’avez pas trouvé la réponse que vous recherchez ?
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 25 mars 2006 à 20:02
C'est parce-que les DLL faites en C++ ne sont pas .NET, comme celles faites en C#. Il faut que tu génère ta DLL en mettant tout ton code en .NET pour pouvoir la récupérer en C#, qui est un langage .NET.