Bonsoir,
J'ouvre ce sujet car je rencontre un problème pour "intégrer" des dll au sein d'un projet de type Application Console sous Visual C++ 6.0.
J'ai donc à disposition 4 fichiers .dll (aucun .lib, aucun .h). C'est la première fois que j'intègre des librairies dynamiques au sein d'un projet et ça ne va pas comme je le souhaite.
Pour les intégrer, je les ai ajouter à mon projet et je tente de les importer par le code suivant pour pouvoir ensuite utiliser les classes contenues dans les dll dans mon projet VC++.
Je n'ai pas utilisé LoadLibrary et GetProcAdress car de ce que j'ai compris, ceci permet juste de faire le lien avec les fonctions et non pas avec les classes contenues dans les dll.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #define DllImport __declspec( dllimport ) //Importation de la librairie CMicroBot_1-1.dll class DllImport CMicroBot_1_1{ public : CMicroBot_1_1(); // Constructeur de la classe CMicroBot_1_1 contenue dans la dll virtual short OpenConnection(); // Méthode de la classe CMicro_1_1 contenue dans la dll virtual short CloseConnection(); // idem };
Le problème est que lorsque que j'instancie l'objet de type CMicrobot_1_1 avec le code ci-dessous (Bot.cpp) j'ai une erreur qui me dit qu'il est impossible de convertir le type 'CMicroBot_1_1' en '*CMicroBot_1_1'.
Je n'ai pas l'impression que l'instanciation se fasse correctement et que le constructeur soit vraiment "pris en compte".
Est-ce je procède bien de la bonne manière ou dois-je procéder autrement pour pouvoir utiliser les classes des dll ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Bot::Bot() { CMicroBot_1_1 myRobot = new CMicroBot_1_1(); myRobot.OpenConnection(); }
Cordialement,
Tehko
Partager