thmatew
Messages postés68Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 janvier 2010
-
9 mai 2007 à 16:35
katsankat
Messages postés571Date d'inscriptionvendredi 30 décembre 2005StatutMembreDernière intervention12 juillet 2012
-
6 juil. 2007 à 11:06
Bonjour a tous,
Voila mon souci, j'ai besoin d'intégrer une dll.NET en C, j'aimerais savoir comment faire pour utiliser cette dll???!!!!
j'utilise Visual Studio .NET 2003, avant j'utilisai Borland Studio 2006 mais a cause de probleme de licence je ne peut plus l'utiliser.
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 10 mai 2007 à 12:43
Salut,
Le C et le dotnet, c'est quand même des extrèmes : le C est pas objet, et le dotnet n'est pas compiler vers du langage machine. (Pas lors de la production des builds du moins)
Apparment, la solution, ce serait de recompiler ta dll dotnet pour qu'elle ressemble à du COM (dll ActiveX), et il faudrat que tu bosse ton C pour la prise en charge de COM. Je sais pas exactement ce qu'il faut faire, mais tu risque de devoir gérer les compteurs de références des classes COM manuellement. Il doit y avoir des tutos sur le sujet sur le net. (Aucun souci si tu fais du C++ bien sûr)
Pour la dll dotnet en COM, pareil, google et encore google.
Si tu trouve des bons liens, poste les ici, ça peut faciliter la vie des suivants qui auront ce problème (Assez courant).
thmatew
Messages postés68Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 janvier 2010 10 mai 2007 à 13:14
je reexplique ma question autrement
voila, je me suis mal exprimé, c'est une dll activeX et c du C/C++ que j'utilise, j'arrive a intégrer ma dll ActiveX au projet mais voila ce ke je fais :
#import
"ModbusServer.tlb" //Importation de la bibliotheque de type
int
_tmain(
int argc, _TCHAR* argv[])
{
MODBUSSERVERLib::IModbusSrv mb; //Implementation de la classe
}
et la il me jette il me dit que la classe est abstraite alor j'utilise un pointeur sur l'interface qui s'appel IModbusSrvPtr mais là il n'y a pas de methode associé comment faire pour utiliser ce pointeur pour avoir toutes les methode contenu dans IModbusSrv???
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 11 mai 2007 à 10:09
Bah depuis toujours.
Le C est procédural.
On ne peut pas faire de classes en C aussi facilement que l'on en fait en C++. (Le mot clé class est absent du C, on ne peut pas faire d'héritage de la même manière...)
Je suis parti du principe qu'il s'agissait de C vu que thmatew n'a parlé de C++ ni dans son titre, ni dans son premier post. mais sinon, effectivement, il fait au moins en partie du C++ (On peut mélanger les deux dans le même projet sans souci en passant les options qui vont bien au compilo)