在VS2012下静态链接MFC的问题

1>------ 已启动生成: 项目: MFCApplication1, 配置: Debug Win32 ------
1>uafxcwd.lib(afxctrlcontainer2.obj) : error LNK2005: "void __cdecl AfxRegisterMFCCtrlClasses(void)" (?AfxRegisterMFCCtrlClasses@@YAXXZ) 已经在 afxnmcdd.lib(afxctrlcontainer2.obj) 中定义
1>uafxcwd.lib(afxctrlcontainer2.obj) : error LNK2005: "protected: void __thiscall CMFCControlContainer::PreUnsubclassControl(class CWnd *)" (?PreUnsubclassControl@CMFCControlContainer@@IAEXPAVCWnd@@@Z) 已经在 afxnmcdd.lib(afxctrlcontainer2.obj) 中定义
1>uafxcwd.lib(afxctrlcontainer2.obj) : error LNK2005: "public: int __thiscall CMFCControlContainer::SubclassDlgControls(void)" (?SubclassDlgControls@CMFCControlContainer@@QAEHXZ) 已经在 afxnmcdd.lib(afxctrlcontainer2.obj) 中定义
1>c:usersadministratordocumentsvisual studio 2012ProjectsMFCApplication1DebugMFCApplication1.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

解决方法很简单,打开stdafx.h文件,找到 #define _AFX_NO_MFC_CONTROLS_IN_DIALOGS

将这句注释掉即可。。。。

原文地址:https://www.cnblogs.com/swordzj/p/3969410.html