générer une librairie dll à partir d'une classe C++ sous windows - Programmation
Marsh Posté le 19-02-2001 à 10:29:07
à partir de quel programme appelle-tu ta DLL (C++ ou un autre langage ?)
Marsh Posté le 19-02-2001 à 10:33:31
| darthbob a écrit a écrit  : à partir de quel programme appelle-tu ta DLL (C++ ou un autre langage ?)  | 
 
 
Il s'agit d'un programme en C sous Windows qui appelle des méthodes d'une classe. Et c'est cette classe que je veux mettre en dll.
Marsh Posté le 19-02-2001 à 10:59:47
Il ne s'agit donc pas d'une incompatibilité entre langages... 
 
Utilise-tu une fichier .DEF ? 
 
Génére-tu un fichier .exp ? Il peux te permettre de voir l'intitulé exact des fonctions exportées...
Marsh Posté le 19-02-2001 à 11:05:11
| darthbob a écrit a écrit  : Il ne s'agit donc pas d'une incompatibilité entre langages... Utilise-tu une fichier .DEF ? Génére-tu un fichier .exp ? Il peux te permettre de voir l'intitulé exact des fonctions exportées...  | 
 
 
En fait, je vois déjà les noms des fonctions exportées, mais elles contiennent des caractères supplémentaires tels que "?" "@"... 
 
Je ne pense pas utiliser de fichier .DEF   Je vais voir le .exp
Marsh Posté le 19-02-2001 à 11:12:11
OK, alors crée un fichier .DEF (fichier texte) qui permet de décrire précisément les fonctions exportées : 
 
 
 
LIBRARY    nomdelibrary 
 
EXPORTS 
    premierefonction          @1 
    deuxiemefonction          @2 
 
 
tu compiles avec ce fichier ...
Marsh Posté le 19-02-2001 à 11:19:40
| darthbob a écrit a écrit  : OK, alors crée un fichier .DEF (fichier texte) qui permet de décrire précisément les fonctions exportées : LIBRARY nomdelibrary EXPORTS premierefonction @1 deuxiemefonction @2 tu compiles avec ce fichier ...  | 
 
 
 
Pour le nom des fonctions, je dois quand même préciser qu'il s'agit de méthodes d'une classe, ou ce n'est pas la peine? 
 
EXPORTS 
    nomclasse::nompremieremethode   @1 
    nomclasse::nomdeuxiememethode   @2
Marsh Posté le 19-02-2001 à 11:26:27
il vaut peut-etre mieux exporter la classe elle-même ? 
 
dans ton source (.c) : 
 
// This is the constructor of a class that has been exported. 
// see test.h for the class definition 
CTest::CTest() 
 
 
dans le .h : 
 
// This class is exported from the test.dll 
class __declspec(dllexport) CTest { 
public: 
 CTest(void); 
};
--Message édité par darthbob--
Marsh Posté le 19-02-2001 à 10:22:39
Bonjour...
J'ai créé une classe en C++ qui me permet de gérer une partie réseau d'une application. J'aimerais la passer en dll...
Mais je n'arrive pas à trouver comment faire...
en fait, j'arrive à créer la dll, mais il y a des caractères qui apparaissent et qui font que je ne peut pas appeler les méthodes de la classe...
Quelqu'un pourrait-il m'aider?
Merci