un bogue que je ne comprend pas SVP HELP - C++ - Programmation
Marsh Posté le 15-08-2004 à 09:15:43
Ca iras, j'ai finalement remplacer CRect par &rect sans utiliser afxwin.h qui causais des problemes. Apparement c'etais sur l'ordre d'apparition des librairies.
Marsh Posté le 15-08-2004 à 04:27:01
Je tente de compiler un programme sous MS Visual C++ 6.0.
J'utilise CRect et CPoint et DrawText.
J'utilisais TextOut avant et je le remplace donc par DrawText pour VC embedded.
En tout cas, voila, je place donc comme #include <afxwin.h>. Et la
ca plante.
Je signale que le compilateur m'a demander avant d'enlever
windows.h.
fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>
Ce que j'ai fais et j'obtiens ceci:
(je signale que si je mets en commentaire les 2 pauvres lignes qui appel Crect et Drawtext et pareil pour afxwin.h ca marche pas d'erreur.
Tout viens du #include <afxwin.h>. Pourquoi? Une solution svp?
Linking...
nafxcwd.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in CadIO.obj
nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCMTD.lib(new.obj)
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in LIBCMTD.lib(dbgdel.obj)
nafxcwd.lib(dllmodul.obj) : warning LNK4006: _DllMain@12 already defined in CadIO.obj; second definition ignored
nafxcwd.lib(afxmem.obj) : warning LNK4006: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCMTD.lib(new.obj); second definition ignored
nafxcwd.lib(afxmem.obj) : warning LNK4006: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in LIBCMTD.lib(dbgdel.obj); second definition ignored
Creating library ../Bin/Debug/CadIO/CadIO.lib and object ../Bin/Debug/CadIO/CadIO.exp
../Bin/Debug/CadIO.dll : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.
Creating browse info file...
CadIO.dll - 4 error(s), 10 warning(s
)