Ajout de reference [Résolu]

Signaler
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
-
Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
-
bonjour,

Je ne connais absolument pas C++ mais je dois faire un petit projet avec (d'habitude je fais du C#, donc là ce n'est pas gagné...).

J'ai donc mon projet (console) et une dll écrite en C. Cette dll possède des méthodes que je souhaite appeler. J'ai le fichier .h correspondant à la dll :

#ifdef

__cplusplus
extern

"C" {
#endif

/* __cplusplus */#include

<windows.h>unsigned

int WINAPI LaMethodeDeMaDll();
#ifdef

__cplusplus}

#endif

J'ai donc ecris mon appli et je fais référence à mon fichier .h :

#include

"..\..\..\Bureau\lefichierhdemadll.h"

Et dans le main, je fais appel à une méthode de la dll :

int

_tmain(int argc, _TCHAR* argv[]){

   LaMethodeDeMaDll();

return 0;}

Lorsque je compile, j'ai le message suivant :

Erreur 6 error LNK2019: symbole externe non résolu [mailto:_LaMethodeDeMaDll@0 _LaMethodeDeMaDll@0] référencé dans la fonction _wmain monprojet.obj 
Erreur 8 fatal error LNK1120: 1 externe non résolu

J'oublie très certaiment un morceau, mais lequel ?

Merci pour toute l'aide que vous pourrez m'apporter.
(Et profond respect aux développeurs C/C++ :-) )

Seb.

6 réponses

Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
4
Erf, ca se complique.
Tu va être obligé de charger dynamiquement la dll.
Donc utiliser LoadLibrary et GetProcAddress.

Dans ce cas ton .h sert pas bcp. (a part pour connaitre les proto de fonctions)
Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
4
salut,

Tu as une erreur de link comme tu l'auras vu.
Quand tu as généré la dll, ca a du generer un fichier lib.
ajout ce fichier dans les proprietes de ton exe :
Configuration properties / Linker /add dependencies
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
Bonjour,

Merci pour ta réponse. C'est ce que j'ai trouvé dans les forums, sauf que je n'ai pas le fichier lib... (ce n'est pas ma dll...)

As-tu une astuce dans ces cas là ?

Merci pour ton aide.
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
Merci pour ton aide, je vais chercher des infos sur ces deux instructions.

Seb.
Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
J'ai généré mon fichier .lib à partir de la console "Invite de commandes de Visual Studio 2005". Je ne sais pas si cela va marcher, mais bon...

Maintenant, peux-tu m'indiquer comment faire référence dans Visual sudio 2005 à ce fichier ?

Merci beaucoup pour ton aide.

Seb.
Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
4
bah si tu as généré le lib, tu regardes ma 1ere réponse.

si tu galère, envoie un MP, pour pouvoir envoyer des screenshots.