社区
ATL
帖子详情
_DllMain@12 已经在 dllmain.obj 中定义错误的解决方法
chelp
2014-05-25 09:36:37
出错说明:
1>mfcs90ud.lib(dllmodul.obj) : error LNK2005: _DllMain@12 已经在 dllmain.obj 中定义
1> 正在创建库l.lib 和对象 .exp
1>Debug\Wl.dll : fatal error LNK1169: 找到一个或多个多重定义的符号
...全文
767
2
打赏
收藏
_DllMain@12 已经在 dllmain.obj 中定义错误的解决方法
出错说明: 1>mfcs90ud.lib(dllmodul.obj) : error LNK2005: _DllMain@12 已经在 dllmain.obj 中定义 1> 正在创建库l.lib 和对象 .exp 1>Debug\Wl.dll : fatal error LNK1169: 找到一个或多个多重定义的符号
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chelp
2014-05-25
打赏
举报
回复
谢谢版主。 具体可参看 http://blog.sina.com.cn/s/blog_662234020100yk6l.html
threenewbee
2014-05-25
打赏
举报
回复
你错误的include了源代码,导致dllmain函数出现了两遍。
error LNK2005:
Dll
Main
already defined in corelibc.lib(
dll
main
.
obj
)
error LNK2005:
Dll
Main
already defined in corelibc.lib(
dll
main
.
obj
)的
解决
方案
Obj
ectARX及MFC开发常见的问题及
解决
方法
总结.doc
开发
中
遇到问题了么?来这看看吧 工作
中
使用到
Obj
ectARX及MFC开发遇到的问题及
解决
1、提示microsoft incremental linker已停止工作
解决
方法
表现为:编译没错,生成时,弹出
错误
窗口;
解决
:工程属性-配置属性-连接器-常规,启用增量连接想,选择 “否”。。。
mfc与其他库冲突问题.doc
当 C 运行时 (CRT) 库和 Microsoft 基础类 (MFC) 库的链接顺序有误时,可能会出现以下某个 LNK2005
错误
: nafxcwd.lib(afxmem.
obj
) :error LNK2005: "void * __cdecl operator new(unsigned int)"(??2@YAPAXI@Z) already defined in LIBCMTD.lib(new.
obj
) nafxcwd.lib(afxmem.
obj
) :error LNK2005: "void __cdecl operator delete(void *)"(??3@YAXPAX@Z) already defined in LIBCMTD.lib(dbgnew.
obj
) nafxcwd.lib(afxmem.
obj
) :error LNK2005: "void * __cdecl operator new(unsigned int,int,char const *,int)" (??2@YAPAXIHPBDH@Z) already defined in LIBCMTD.lib(dbgnew.
obj
) mfcs40d.lib(
dll
modul.
obj
):error LNK2005:_
Dll
Main
@
12
already defined in MSVCRTD.LIB (
dll
main
.
obj
) mfcs42d.lib(
dll
modul.
obj
):error LNK2005:_
Dll
Main
@
12
already defined in msvcrtd.lib(
dll
main
.
obj
)
detours2.1 VC6
中
编译
方法
及源代码及使用例子及编译好的BIN
detours2.1在vc6
中
编译
方法
1.在纯VC6环境
中
新建 win32 static library 项目名设为detours 2.把detours2.1 scr目录
中
的源文件全部添加到项目 3.在Project->Seting->C/C++->Preprocessor definitions
中
添加DETOURS_X86 4.打开项目
中
detoured.cpp把里面
Dll
Main
函数名修改为LengFeng(否则使用时会出现
Dll
Main
冲突)error LNK2005: _
Dll
Main
@
12
already defined in ***.
obj
5.直接编译就可以生成detours.lib 6.在需要的项目
中
使用detours.lib和detours.h 就可以了 7.附件
中
提供了编译好的detours.lib和系统源代码 注意:需要在没有安装SDK的环境编译,如果安装过SDK,请把SDK的顺序调到最后 detour_2.1 为源码 detours_bin 为BIN hook_send 为例子 20
12
-7-
12
冷风 QQ
12
1
12
1606
uafxcwd.lib LIBCMTD.lib 弱外部链接
uafxcwd.lib(afxmem.
obj
) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCMTD.lib(new.
obj
) uafxcwd.lib(afxmem.
obj
) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in LIBCMTD.lib(dbgdel.
obj
) uafxcwd.lib(afxmem.
obj
) : error LNK2005: "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z) already defined in LIBCMTD.lib(delete2.
obj
) 原因: CRT 库对 new、delete 和
Dll
Main
函数使用弱外部链接。MFC 库也包含 new、delete 和
Dll
Main
函数。这些函数要求先链接 MFC 库,然后再链接 CRT 库。 当 C 运行时 (CRT) 库和 Microsoft 基础类 (MFC) 库的链接顺序有误时,可能会出现以下 LNK2005
错误
。
解决
方法
: 强制链接器按照正确的顺序链接库! project->properties->Linker->Ignore Specific Library 添加 uafxcwd.lib Libcmtd.lib 在Additional Dependencied添加uafxcwd.lib Libcmtd.lib 问题
解决
!
ATL
3,248
社区成员
48,529
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章