用Visual C++编写DLL,如果在new project时选了MFC DLL,而后又想写成Regular DLL,即拥有自己的DllMain()入口函数,则在build时会遇到类似如下的link错误:
error LNK2005: _DllMain@12 already defined in xxx.OBJ
几种解决方案:
1, 你只需要在工程设置里面,把
WIN32,NDEBUG,_WINDOWS,_MBCS,_USRDLL,MSGBOX_EXPORTS,_WINDLL,_AFXDLL
中的_USRDLL,删除,就可以正确编译了


本文介绍在使用Visual C++开发DLL时遇到的编译错误:_DllMain@12 already defined in xxx.OBJ,并提供了解决方案。通过删除工程设置中的_USRDLL选项,可以成功编译为Regular DLL。
400

被折叠的 条评论
为什么被折叠?



