chalmia2s
Messages postés31Date d'inscriptionmercredi 18 février 2009StatutMembreDernière intervention15 octobre 2009
-
11 mai 2009 à 11:10
chalmia2s
Messages postés31Date d'inscriptionmercredi 18 février 2009StatutMembreDernière intervention15 octobre 2009
-
11 mai 2009 à 13:11
Bonjour,
il y avait une Librairie écrite en C++, avec 3 projets: deux application console et une dll, je voulais modifier le continue d'un des projets (qui etait une application console) et la changer en dll .
J'ai changé les propriétes des deux application consoles ainsi:
- Configuration properties/ C/C++/ Code Generation/ Runtime library:
en: Mult-threaded Debug DLL(/MDd)
- Configuration properties/ Linker/ General/ Output File:
en: $(OutDir)\$(ProjectName).dll
- Configuration properties/ Linker/ System/ SubSystem:
en: Windows (/SUBSYSTEM:WINDOWS)
Mais j'obtiens les erreurs suivantes:
Linking...
1> Creating library .\Debug\sample.lib and object .\Debug\sample.exp
1>MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
1>.\Debug\sample.dll : fatal error LNK1120: 1 unresolved externals
Quelqu'un aurait une idee de comment pouvoir resoubre ce probleme?
fregolo52
Messages postés1115Date d'inscriptionmercredi 15 juin 2011StatutMembreDernière intervention 6 mai 20214 11 mai 2009 à 12:07
les fonctions annClose & Co doivent etre dans une dll.
Regarde dans Configuration properties/Linker /input /Add dependencies de ton ancien exe console, il doit y avoir un ou plusieur fichier .lib de dépendance.
chalmia2s
Messages postés31Date d'inscriptionmercredi 18 février 2009StatutMembreDernière intervention15 octobre 2009 11 mai 2009 à 11:50
oui j'avais commencer a faire comme ça, creer un nouveau projet dll et copier les fichier dedans , mais j'avais plusieurs erreur, comme par exemple:
1>Édition des liens en cours...
1> Création de la bibliothèque
C:\...\dllkey\Debug\anntest.lib et de l'objet
C:\...\dllkey\Debug\anntest.exp
1>ann.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) void __cdecl annClose(void)" (__imp_?annClose@@YAXXZ) référencé dans la fonction "long __cdecl ann(struct lme_ref_struct *,long,long)" (?ann@@YAJPAUlme_ref_struct@@JJ@Z)
1>ann.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: __thiscall ANNkd_tree::ANNkd_tree(double * *,int,int,int,enum ANNsplitRule)" (__imp_??0ANNkd_tree@@QAE@PAPANHHHW4ANNsplitRule@@@Z) référencé dans la fonction "long __cdecl ann(struct lme_ref_struct *,long,long)" (?ann@@YAJPAUlme_ref_struct@@JJ@Z)
1>ann.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) double * * __cdecl annAllocPts(int,int)" (__imp_?annAllocPts@@YAPAPANHH@Z) référencé dans la fonction "long __cdecl ann(struct lme_ref_struct *,long,long)" (?ann@@YAJPAUlme_ref_struct@@JJ@Z)
1>ann.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) double * __cdecl annAllocPt(int,double)" (__imp_?annAllocPt@@YAPANHN@Z) référencé dans la fonction "long __cdecl ann(struct lme_ref_struct *,long,long)" (?ann@@YAJPAUlme_ref_struct@@JJ@Z)