苦恼!莫名奇妙的编译错

csdn95566 2002-02-26 05:32:51
本来一个工程好好的,后来加入了socket处理,估计是“#include <afxsock.h>”而导致下面的编译错误,但又不能去掉“#include <afxsock.h>”,重新全部编译也没用,怎么办啊?

nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCD.lib(new.obj)
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in LIBCD.lib(dbgdel.obj)
nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int,int,char const *,int)" (??2@YAPAXIHPBDH@Z) already defined in LIBCD.lib(dbgnew.obj)
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
Debug/test.exe : fatal error LNK1120: 2 unresolved externals

谢谢!
...全文
33 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
csdn95566 2002-03-04
  • 打赏
  • 举报
回复
看来这个问题挺难办的
但还得感谢大家的帮助,散分
lvxn_sina 2002-03-01
  • 打赏
  • 举报
回复
重复定义啊!
不能删afxsock.h那就删掉和他重复的其他header file!
SimonDW 2002-03-01
  • 打赏
  • 举报
回复
继续调include的顺序吧……
Bowdom 2002-03-01
  • 打赏
  • 举报
回复
你用static link MFC试试看.
ahao 2002-02-28
  • 打赏
  • 举报
回复
看callstack,你就知道到底哪里出错了
csdn95566 2002-02-28
  • 打赏
  • 举报
回复
to jeffchen(Jeff)
调了
另外我发现当把它单独放在一个工程里时就工作正常。但当把它在CreateThread()函数中声明并使用时,客户端可以连上,但在该类里OnAccept()和OnReceive()函数上的断点均没有反应,即用Go运行程序时,客户端连上该监听该端口,但程序没有在断点处停下。我也在OnAccept()和OnReceive()中也进行消息输出,但实际上没有输出,不知为何?
jeffchen 2002-02-28
  • 打赏
  • 举报
回复
你调用AfxSockInit()了吗?
csdn95566 2002-02-28
  • 打赏
  • 举报
回复
to strip(阿飞)
停在调用socket创建函数Create(port)时
to ahao(天·狼·星星)
具体怎么用callstack查错啊
to ericzhangali(卖女孩的小火柴)
那我该咋办啊,把选项改成多线程也不行啊
loveisbug 2002-02-28
  • 打赏
  • 举报
回复
_ b e g i n t h r e a d e x 函数只存在于C / C + +运行期库的多线程版本中。如果链接到单线程运
行期库,就会得到一个链接程序报告的“未转换的外部符号”错误消息。当然,从设计上讲,
这个错误的原因是单线程库在多线程应用程序中不能正确地运行。另外需要注意,当创建一个
新项目时,Visual Studio 默认选定单线程库。这并不是最安全的默认设置,对于多线程应用程
序来说,必须显式转换到多线程的C / C + +运行期库。
wishma 2002-02-28
  • 打赏
  • 举报
回复
在工程的设置里有一项可以去掉一些缺省链接(,在工程设置对话框 link-input有一项ignore libraries编辑框输入 LIBCD.lib
ju_feng 2002-02-28
  • 打赏
  • 举报
回复
注意以下你的程序有没有警告信息,可能从中找到一点帮助
strip 2002-02-27
  • 打赏
  • 举报
回复
调试一下吧,然后出什么错,总归有个症状或者报错信息什么的
csdn95566 2002-02-27
  • 打赏
  • 举报
回复
还是不行,运行时出错
strip 2002-02-27
  • 打赏
  • 举报
回复
程序运行不下去,没有返回值,如果按F10的话就弹出一个错误对话框,然后还停在那里,对话框和访问地址为00000里的数据时报错的消息一样

停在哪里????
csdn95566 2002-02-27
  • 打赏
  • 举报
回复
to ahao(天·狼·星星)
还是没用,现在我调整了一下lib的链接顺序,就只剩下下面的警告了,不知对程序运行有没有什么影响?
warning LNK4098: defaultlib "LIBC" conflicts with use of other libs; use /NODEFAULTLIB:library
cmpp 2002-02-27
  • 打赏
  • 举报
回复
http://www.csdn.net/expert/topic/544/544226.xml
csdn95566 2002-02-27
  • 打赏
  • 举报
回复
to ericzhangali(卖女孩的小火柴)
那该咋办啊?
loveisbug 2002-02-27
  • 打赏
  • 举报
回复
这是缺库,C运行时期库
csdn95566 2002-02-27
  • 打赏
  • 举报
回复
头都大了,错误又变成
Nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
Nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
VC真烦人。。。
code_cold 2002-02-27
  • 打赏
  • 举报
回复
还是没用,现在我调整了一下lib的链接顺序,就只剩下下面的警告了,不知对程序运行有没有什么影响?
warning LNK4098: defaultlib "LIBC" conflicts with use of other libs; use /NODEFAULTLIB:library


#pragma comment(linker, "/NOD")
#pragma comment(lib, "Libcmtd.lib")
#pragma comment(lib, "Libcimtd.lib")
加载更多回复(14)

16,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧