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