neophenix83
Messages postés63Date d'inscriptionsamedi 9 avril 2005StatutMembreDernière intervention 4 mai 2007
-
30 mars 2006 à 16:44
ebooserge
Messages postés137Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention16 juillet 2007
-
31 mars 2006 à 00:14
Bonjour,
j'ai un fichier C qui contient des fonctions déclarées comme ceci :
Or, à la compiltaion, j'ai une erreur (sous VC++) de type:
Error 56 error LNK2019: unresolved external symbol _fonction1 referenced in function _test callout.obj
Donc, vu que j'ai inclu mon .h au projet...je pense qu'en fait, ce qu'il faut que je fasse, c'est que j'associe la dll associée à ce point H. Pouvez vous me confirmer cela? est ce quye ca doit etre un .DLL ou un .LIB ?!
Suffit il que je mette le .DLL (ou .LIB) dans le projet, et ca sera ok ?
Et est ce __declspec(dllimport) ou __declspec(dllexport) qui doit etre défini en tant que MY_DLLEXPORT pour que ca soit ok, et que le linker trouve les fonctions?!?!?
ebooserge
Messages postés137Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention16 juillet 20071 31 mars 2006 à 00:14
pour rester dans un cadre général, il faut souvent inclure la librairie statique, c'est a dire le .lib pour se lier a une dll.
mais toutes les dll n'ont pas de .lib, auquel k il faut s'y rattacher avec l'entete qui contient les definitions des fonctions de la dll.
maintenant dans ton cas particulier, en effet il n'arriver pas a se lier a cette fonction
essaie directement la syntaxique suivante
extern "C" __declspec(dllexport) int fonction1()