码迷,mamicode.com
首页 > 其他好文 > 详细

DLL文件编译出错_DllMain@12 already defined in XXX.obj

时间:2015-05-04 20:19:05      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:dll   dllmain   

编译MFC DLL程序时出现

Error 2 error LNK1169: one or more multiply defined symbols found E:\C++\HookTest\CopyFileDetour\CFDetour\Debug\1t.dll 1 1t 1
Error 1 error LNK2005: _DllMain@12 already defined in 1t.obj E:\C++\HookTest\CopyFileDetour\CFDetour\1t\mfcs100ud.lib(dllmodul.obj) 1t

1t为测试的dll工程名称


错误解决方法:

位置:Project->Propertie->C/C++->Preprocessor->Preprocessor Definitions

原句”WIN32;_DEBUG;_WINDOWS;_USRDLL;DATALOG_EXPORTS;%(PreprocessorDefinitions)“把里面_USRDLL删除掉就可以解决此问题。极有可能是加了#include <afx.h>引起这个问题的。


之后可能会出现 如下错误虽然不影响程序的编译运行

3 IntelliSense: #error directive: Please use the /MD switch for _AFXDLL builds d:\vs2010c++\vc\atlmfc\include\afxver_.h 81 3

可以通过以下设置更改

  Project ->Property->Configuration Properties->C/C++->Code Generation->Runtime Library,在Runtime Library下选中Multithreaded    DLL或Debug Multithreaded DLL。

DLL文件编译出错_DllMain@12 already defined in XXX.obj

标签:dll   dllmain   

原文地址:http://blog.csdn.net/u013147600/article/details/45483193

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!