首页 > 代码库 > error LNK2005: DDX_Control 已经在 uafxcwd.lib(wincore2.obj) 中定义
error LNK2005: DDX_Control 已经在 uafxcwd.lib(wincore2.obj) 中定义
编译错误提示:
1>afxnmcdd.lib(wincore2.obj) : error LNK2005: "void __stdcall DDX_Control(classCDataExchange *,int,class CWnd &)" (?DDX_Control@@YGXPAVCDataExchange@@HAAVCWnd@@@Z)already defined in nafxcwd.lib(wincore2.obj)1>afxnmcdd.lib(wincore2.obj) : error LNK2005: "public: int __thiscallCWnd::ExecuteDlgInit(void *)" (?ExecuteDlgInit@CWnd@@QAEHPAX@Z) already defined innafxcwd.lib(wincore2.obj)1>afxnmcdd.lib(afxctrlcontainer2.obj) : error LNK2005: "void __cdeclAfxRegisterMFCCtrlClasses(void)" (?AfxRegisterMFCCtrlClasses@@YAXXZ) already definedin nafxcwd.lib(afxctrlcontainer2.obj)1>afxnmcdd.lib(afxctrlcontainer2.obj) : error LNK2005: "protected: void __thiscallCMFCControlContainer::PreUnsubclassControl(class CWnd *)" (?PreUnsubclassControl@CMFCControlContainer@@IAEXPAVCWnd@@@Z) already defined innafxcwd.lib(afxctrlcontainer2.obj)1>afxnmcdd.lib(afxctrlcontainer2.obj) : error LNK2005: "public: int __thiscallCMFCControlContainer::SubclassDlgControls(void)" (?SubclassDlgControls@CMFCControlContainer@@QAEHXZ) already defined innafxcwd.lib(afxctrlcontainer2.obj)1>afxnmcdd.lib(afxctrlcontainer2.obj) : error LNK2005: "public: static int __stdcallCMFCControlContainer::UTF8ToString(char const *,class ATL::CStringT<char,classStrTraitMFC<char,class ATL::ChTraitsCRT<char> > > &,int)" (?UTF8ToString@CMFCControlContainer@@SGHPBDAAV?$CStringT@DV?$StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@H@Z) already defined in nafxcwd.lib(afxctrlcontainer2.obj)1>.\Debug\application-ui.exe : fatal error LNK1169: one or more multiply definedsymbols found
原因分析:
1、MFC工程引用了其它WIN32静态库
2、WIN32静态库选择支持MFC。
解决办法:
1、把所有WIN32静态库的stdafx.h文件中的一句代码#define _AFX_NO_MFC_CONTROLS_IN_DIALOGS删除。
error LNK2005: DDX_Control 已经在 uafxcwd.lib(wincore2.obj) 中定义
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。