Salut,

j'ai dans un prog inclus des librairies pour lire les XML, plus precisement les librairies dispo a cette adresse (XML et FTP, si vous pensez que c'est pas terrible comme librairie dites le moi, j'ai pris ce que je trouvais ^_^) :

http://www.chilkatsoft.com/vc_xml_library.asp

Une fois installe tout ca, j'ai indique les include dans mon projet pour le c++ et l'ensemble des lib pour le linker (VS .net)... mais une fois que je compile le probleme survient.

Si je laisse les librairies par defaut, j'obtiens ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Linking...
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _sprintf already defined in LIBCMTD.lib(sprintf.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _strncmp already defined in LIBCMTD.lib(strncmp.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _fclose already defined in LIBCMTD.lib(fclose.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _strchr already defined in LIBCMTD.lib(strchr.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _strncpy already defined in LIBCMTD.lib(strncpy.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _malloc already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _free already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _fflush already defined in LIBCMTD.lib(fflush.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: __isctype already defined in LIBCMTD.lib(isctype.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _tolower already defined in LIBCMTD.lib(tolower.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _isupper already defined in LIBCMTD.lib(_ctype.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _memmove already defined in LIBCMTD.lib(memmove.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _isalnum already defined in LIBCMTD.lib(_ctype.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: _wcslen already defined in LIBCMTD.lib(wcslen.obj)
MSVCRTD.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)
MSVCRTD.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: __stricmp already defined in LIBCMTD.lib(stricmp.obj)
MSVCRTD.lib(MSVCR71D.dll) : error LNK2005: __strnicmp already defined in LIBCMTD.lib(strnicmp.obj)
LINK : warning LNK4098: defaultlib 'MSVCRTD' conflicts with use of other libs; use /NODEFAULTLIB:library
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__WSAStartup@8 referenced in function "private: static bool __cdecl ChilkatSocket::startupWSA(class LogBase &)" (?startupWSA@ChilkatSocket@@CA_NAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__WSAGetLastError@0 referenced in function "private: bool __thiscall ChilkatSocket::createSocket(class LogBase &)" (?createSocket@ChilkatSocket@@AAE_NAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__socket@12 referenced in function "private: bool __thiscall ChilkatSocket::createSocket(class LogBase &)" (?createSocket@ChilkatSocket@@AAE_NAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__gethostbyname@4 referenced in function "private: static bool __cdecl ChilkatSocket::CheckHostname2(char const *,int)" (?CheckHostname2@ChilkatSocket@@CA_NPBDH@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__inet_addr@4 referenced in function "private: static bool __cdecl ChilkatSocket::CheckHostname2(char const *,int)" (?CheckHostname2@ChilkatSocket@@CA_NPBDH@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__htons@4 referenced in function "private: static bool __cdecl ChilkatSocket::CheckHostname2(char const *,int)" (?CheckHostname2@ChilkatSocket@@CA_NPBDH@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__inet_ntoa@4 referenced in function "public: bool __thiscall ChilkatSocket::GetSockName(class StringBuffer &,int &)" (?GetSockName@ChilkatSocket@@QAE_NAAVStringBuffer@@AAH@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__getsockname@12 referenced in function "public: bool __thiscall ChilkatSocket::GetSockName(class StringBuffer &,int &)" (?GetSockName@ChilkatSocket@@QAE_NAAVStringBuffer@@AAH@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__connect@12 referenced in function "private: bool __thiscall ChilkatSocket::ConnectSocket2(char const *,int,class LogBase &,bool &)" (?ConnectSocket2@ChilkatSocket@@AAE_NPBDHAAVLogBase@@AA_N@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__ioctlsocket@12 referenced in function "private: bool __thiscall ChilkatSocket::ConnectSocket2(char const *,int,class LogBase &,bool &)" (?ConnectSocket2@ChilkatSocket@@AAE_NPBDHAAVLogBase@@AA_N@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__select@20 referenced in function "public: bool __thiscall ChilkatSocket::IsWriteable(unsigned long,class LogBase &)" (?IsWriteable@ChilkatSocket@@QAE_NKAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__listen@8 referenced in function "public: bool __thiscall ChilkatSocket::ListenOnPort(int,class LogBase &)" (?ListenOnPort@ChilkatSocket@@QAE_NHAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__bind@12 referenced in function "public: bool __thiscall ChilkatSocket::ListenOnPort(int,class LogBase &)" (?ListenOnPort@ChilkatSocket@@QAE_NHAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__accept@12 referenced in function "public: class ChilkatSocket * __thiscall ChilkatSocket::AcceptNextConnection(class LogBase &)" (?AcceptNextConnection@ChilkatSocket@@QAEPAV1@AAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__gethostname@8 referenced in function "private: static bool __cdecl ChilkatSocket::GetLocalHostName2(class StringBuffer &,class LogBase &)" (?GetLocalHostName2@ChilkatSocket@@CA_NAAVStringBuffer@@AAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__closesocket@4 referenced in function "public: bool __thiscall ChilkatSocket::NewRandomPortAndListen(int,int,int &,int,class LogBase &)" (?NewRandomPortAndListen@ChilkatSocket@@QAE_NHHAAHHAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__shutdown@8 referenced in function "public: bool __thiscall ChilkatSocket::NewRandomPortAndListen(int,int,int &,int,class LogBase &)" (?NewRandomPortAndListen@ChilkatSocket@@QAE_NHHAAHHAAVLogBase@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__send@16 referenced in function "public: bool __thiscall ChilkatSocket::SendOnSocket(unsigned char const *,int,class LogBase &,class ProgressMonitor *)" (?SendOnSocket@ChilkatSocket@@QAE_NPBEHAAVLogBase@@PAVProgressMonitor@@@Z)
CkBaseDbgDll.lib(ChilkatSocket.obj) : error LNK2019: unresolved external symbol __imp__recv@16 referenced in function "public: bool __thiscall ChilkatSocket::ReceiveOnSocket(unsigned char *,int &,bool &,class LogBase &)" (?ReceiveOnSocket@ChilkatSocket@@QAE_NPAEAAHAA_NAAVLogBase@@@Z)
CkBaseDbgDll.lib(MimeMessage2.obj) : error LNK2019: unresolved external symbol __imp__RpcStringFreeA@4 referenced in function "private: void __thiscall MimeMessage2::generateBoundary(class StringBuffer &)const " (?generateBoundary@MimeMessage2@@ABEXAAVStringBuffer@@@Z)
CkBaseDbgDll.lib(MimeMessage2.obj) : error LNK2019: unresolved external symbol __imp__UuidToStringA@8 referenced in function "private: void __thiscall MimeMessage2::generateBoundary(class StringBuffer &)const " (?generateBoundary@MimeMessage2@@ABEXAAVStringBuffer@@@Z)
CkBaseDbgDll.lib(MimeMessage2.obj) : error LNK2019: unresolved external symbol __imp__UuidCreate@4 referenced in function "private: void __thiscall MimeMessage2::generateBoundary(class StringBuffer &)const " (?generateBoundary@MimeMessage2@@ABEXAAVStringBuffer@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptSignMessage@28 referenced in function "private: class DataBuffer * __thiscall CK_Crypt::createDetachedSignatureInner(class Certificate const *,char const *,int,class LogBase *)" (?createDetachedSignatureInner@CK_Crypt@@AAEPAVDataBuffer@@PBVCertificate@@PBDHPAVLogBase@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptEncodeObject@20 referenced in function "private: class DataBuffer * __thiscall CK_Crypt::createDetachedSignatureInner(class Certificate const *,char const *,int,class LogBase *)" (?createDetachedSignatureInner@CK_Crypt@@AAEPAVDataBuffer@@PBVCertificate@@PBDHPAVLogBase@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptVerifyDetachedMessageSignature@32 referenced in function "public: bool __thiscall CK_Crypt::verifyDetachedSignature(class DataBuffer const *,char const *,int,class CertificateStore *,class Certificate * *,class LogBase *)const " (?verifyDetachedSignature@CK_Crypt@@QBE_NPBVDataBuffer@@PBDHPAVCertificateStore@@PAPAVCertificate@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptDecodeMessage@52 referenced in function "private: bool __thiscall CK_Crypt::decodeMessage2(unsigned char const *,unsigned long,class DataBuffer &,class ExtPtrArray *,class Certificate * *,class LogBase *)" (?decodeMessage2@CK_Crypt@@AAE_NPBEKAAVDataBuffer@@PAVExtPtrArray@@PAPAVCertificate@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptDecryptMessage@24 referenced in function "private: bool __thiscall CK_Crypt::decryptMessage2a(unsigned char const *,unsigned long,class DataBuffer &,class ExtPtrArray *,class Certificate * *,class LogBase *)" (?decryptMessage2a@CK_Crypt@@AAE_NPBEKAAVDataBuffer@@PAVExtPtrArray@@PAPAVCertificate@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptEncryptMessage@28 referenced in function "private: bool __thiscall CK_Crypt::encryptData2(unsigned char const *,unsigned long,class DataBuffer &,class Certificate const &,class StringBuffer &,class LogBase *)" (?encryptData2@CK_Crypt@@AAE_NPBEKAAVDataBuffer@@ABVCertificate@@AAVStringBuffer@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CK_Crypt.obj) : error LNK2019: unresolved external symbol __imp__CryptVerifyMessageSignature@28 referenced in function "public: bool __thiscall CK_Crypt::verifySignature(class DataBuffer const *,class DataBuffer * *,class Certificate * *,class LogBase *)const " (?verifySignature@CK_Crypt@@QBE_NPBVDataBuffer@@PAPAV2@PAPAVCertificate@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertVerifyRevocation@28 referenced in function "public: bool __thiscall Certificate::isRevoked(void)" (?isRevoked@Certificate@@QAE_NXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CryptDecodeObject@28 referenced in function "private: void __thiscall Certificate::parseExtensions(void)" (?parseExtensions@Certificate@@AAEXXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertFreeCertificateChain@4 referenced in function "private: void __thiscall Certificate::initializeValidity(void)" (?initializeValidity@Certificate@@AAEXXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertFreeCertificateChainEngine@4 referenced in function "private: void __thiscall Certificate::initializeValidity(void)" (?initializeValidity@Certificate@@AAEXXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertGetCertificateChain@32 referenced in function "private: void __thiscall Certificate::initializeValidity(void)" (?initializeValidity@Certificate@@AAEXXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertCreateCertificateChainEngine@8 referenced in function "private: void __thiscall Certificate::initializeValidity(void)" (?initializeValidity@Certificate@@AAEXXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertGetCertificateContextProperty@16 referenced in function "public: bool __thiscall Certificate::has_AT_KeyExchange(void)" (?has_AT_KeyExchange@Certificate@@QAE_NXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertCreateCertificateContext@12 referenced in function "public: static class Certificate * __cdecl Certificate::createFromBinary(char const *,int,class LogBase *)" (?createFromBinary@Certificate@@SAPAV1@PBDHPAVLogBase@@@Z)
CkBaseDbgDll.lib(CryptoMsg.obj) : error LNK2001: unresolved external symbol __imp__CertCreateCertificateContext@12
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CryptAcquireCertificatePrivateKey@24 referenced in function "public: bool __thiscall Certificate::hasPrivateKey(void)" (?hasPrivateKey@Certificate@@QAE_NXZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertDuplicateCertificateContext@4 referenced in function "public: void __thiscall Certificate::dupContext(void)" (?dupContext@Certificate@@QAEXXZ)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2001: unresolved external symbol __imp__CertDuplicateCertificateContext@4
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertFreeCertificateContext@4 referenced in function "public: virtual __thiscall Certificate::~Certificate(void)" (??1Certificate@@UAE@XZ)
CkBaseDbgDll.lib(Certificate.obj) : error LNK2019: unresolved external symbol __imp__CertNameToStrA@20 referenced in function "public: void __thiscall Certificate::getIssuerName(class StringBuffer &)const " (?getIssuerName@Certificate@@QBEXAAVStringBuffer@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertDuplicateStore@4 referenced in function "public: class CertificateStore * __thiscall CertificateStore::dupStore(class LogBase *)" (?dupStore@CertificateStore@@QAEPAV1@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertCloseStore@8 referenced in function "public: virtual __thiscall CertificateStore::~CertificateStore(void)" (??1CertificateStore@@UAE@XZ)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertEnumCertificatesInStore@8 referenced in function "public: int __thiscall CertificateStore::numCertificates(void)" (?numCertificates@CertificateStore@@QAEHXZ)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertOpenStore@20 referenced in function "public: static class CertificateStore * __cdecl CertificateStore::createMemoryStore(class LogBase *)" (?createMemoryStore@CertificateStore@@SAPAV1@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertAddEncodedCertificateToStore@24 referenced in function "public: bool __thiscall CertificateStore::addEncodedCertificateUtf8(char const *,class LogBase *)" (?addEncodedCertificateUtf8@CertificateStore@@QAE_NPBDPAVLogBase@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertAddCertificateContextToStore@16 referenced in function "public: bool __thiscall CertificateStore::addCertificate(class Certificate const *,class LogBase *)" (?addCertificate@CertificateStore@@QAE_NPBVCertificate@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertSaveStore@24 referenced in function "private: bool __thiscall CertificateStore::saveCertStore(class LogBase *)" (?saveCertStore@CertificateStore@@AAE_NPAVLogBase@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertDeleteCertificateFromStore@4 referenced in function "public: bool __thiscall CertificateStore::removeCertificate(class Certificate const *,class LogBase *)" (?removeCertificate@CertificateStore@@QAE_NPBVCertificate@@PAVLogBase@@@Z)
CkBaseDbgDll.lib(CertificateStore.obj) : error LNK2019: unresolved external symbol __imp__CertGetSubjectCertificateFromStore@12 referenced in function "public: class Certificate * __thiscall CertificateStore::findCertificate(struct _CERT_INFO *)" (?findCertificate@CertificateStore@@QAEPAVCertificate@@PAU_CERT_INFO@@@Z)
CkBaseDbgDll.lib(CryptoMsg.obj) : error LNK2019: unresolved external symbol __imp__CryptMsgClose@4 referenced in function "public: virtual __thiscall CryptoMsg::~CryptoMsg(void)" (??1CryptoMsg@@UAE@XZ)
CkBaseDbgDll.lib(CryptoMsg.obj) : error LNK2019: unresolved external symbol __imp__CryptMsgGetParam@20 referenced in function "public: int __thiscall CryptoMsg::getNumCerts(void)" (?getNumCerts@CryptoMsg@@QAEHXZ)
CkBaseDbgDll.lib(CryptoMsg.obj) : error LNK2019: unresolved external symbol __imp__CryptMsgUpdate@16 referenced in function "public: bool __thiscall CryptoMsg::setCryptoMessage(unsigned char const *,int,class LogBase *)" (?setCryptoMessage@CryptoMsg@@QAE_NPBEHPAVLogBase@@@Z)
CkBaseDbgDll.lib(CryptoMsg.obj) : error LNK2019: unresolved external symbol __imp__CryptMsgOpenToDecode@24 referenced in function "public: bool __thiscall CryptoMsg::setCryptoMessage(unsigned char const *,int,class LogBase *)" (?setCryptoMessage@CryptoMsg@@QAE_NPBEHPAVLogBase@@@Z)
bref, ca lui plait pas des masses...


Et si je desactive les librairies par defaut (/NODEFAULTLIB), j'obtiens ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Linking...
LINK : error LNK2020: unresolved token (0A000007) new
LINK : error LNK2020: unresolved token (0A00000C) delete
LINK : error LNK2020: unresolved token (0A000010) __ehvec_dtor
LINK : error LNK2020: unresolved token (0A000018) std._Lockit.__dtor
LINK : error LNK2020: unresolved token (0A000019) _DebugHeapTag
LINK : error LNK2020: unresolved token (0A00001C) memcpy
LINK : fatal error LNK1120: 6 unresolved externals
ce qui voudrait dire que l'auteur veut qu'on utilise ses libs a la place des standard, mais qu'il ne les a pas complete ? ou juste que je me suis plante quelque part (ce qui est surement plus plausible)

mes 2 questions donc :
- a votre avis, pour faire un client d'autoupdate de jeu (en gros, connection a un server, check de version sur un XML qu'on telecharge en FTP, puis DL par FTP des fichier de patch qui seront ensuite installes), est ce que ces librairies vous paraissent bien (je suis totalement incompetant pour en juger ^_^)
- vous qu'utiliseriez vous pour faire un tel programme (a part de la prog perso qui prendrait environ 3 mois ^_^) ?
- et comment resoudre mon erreur de link (meme si les librairies sont mauvaises, ca me fera un peu de culture generale pour la prochaine fois que je rencontrerai le probleme)


voila, merci d'avance pour vos reponses eclairees ^_^

ps: c'est un probleme vraiment c++, merci de ne pas me deplacer dans XML.. sivouplait *ptite larme au coin de l'oeil*