Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4838 connectés 

 


Dernière réponse
Sujet : générer une librairie dll à partir d'une classe C++ sous windows
darthbob 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--


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
darthbob 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--

developpeur_en_panne

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

darthbob 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 ...
developpeur_en_panne

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

darthbob 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...
developpeur_en_panne

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.

darthbob à partir de quel programme appelle-tu ta DLL (C++ ou un autre langage ?)
developpeur_en_panne 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

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)