用VC写DLL中"error LNK2005: _DllMain@12 already defined"的错误
2014-07-23 10:12
465 查看
转自:http://www.cnblogs.com/kex1n/archive/2010/01/19/1651407.html
用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,删除,就可以正确编译了
PS:在建立动态链接库工程的时候,如果选择建立一个simple project,建好后默认为mfc的,如果想建立一个拥有DllMain()的工程,则需要建立一个empty工程,自己添加文件。
用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,删除,就可以正确编译了
PS:在建立动态链接库工程的时候,如果选择建立一个simple project,建好后默认为mfc的,如果想建立一个拥有DllMain()的工程,则需要建立一个empty工程,自己添加文件。
error LNK2005: _DllMain@12 already defined in MSVC | |||
|
相关文章推荐
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的错误
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的错误
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的错误
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的错误
- 编译DLL时"error LNK2005: _DllMain@12 already defined"错误
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对(转载)
- 使用CString的方法(以及用VC写DLL中"error LNK2005: _DllMain@12 already defined"的解决办法)
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的解决办法
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对 .
- 编译DLL时"error LNK2005: _DllMain@12 already defined"错误
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对
- 用VC写DLL中"error LNK2005: _DllMain@12 already defined"的应对
- 调试: 编译错误, mfcs42.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRT.lib(dllmai
- libcmtd.lib(crt0dat.obj) : error LNK2005: _exit already defined in msvcrtd.lib(MSVCRTD.dll) 编译错误解决方法
- : error LNK2005: _DllMain@12 already defined in dllmain.obj
- mfcs80ud.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)
- 关于VC的错误 error LNK2005:xxxx already defined in xxxx.lib