hello, world

xiaobenzhu 2002-02-09 01:56:09
我用MFC建了一个Win32 Application,编译通过,但Linking的时候有错,why?错误如下:
Linking...
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
Debug/helloworld.exe : fatal error LNK1120: 2 unresolved externals

源码如下:
//helloworld.cpp 2002.2.9
#include <afxwin.h>

class CHelloFrame : public CFrameWnd {
public:
CHelloFrame() {
Create(NULL, "hello, world", WS_OVERLAPPEDWINDOW, rectDefault); }
};

class CHelloApp : public CWinApp {
public:
virtual BOOL InitInstance();
};

BOOL CHelloApp::InitInstance()
{
m_pMainWnd = new CHelloFrame;
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return FALSE;
}

CHelloApp app;
...全文
52 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaobenzhu 2002-02-09
  • 打赏
  • 举报
回复
谢了!
career 2002-02-09
  • 打赏
  • 举报
回复
同意大家的意见,初学者常见问题。
zula 2002-02-09
  • 打赏
  • 举报
回复
在Project菜单中选择Settings.在Project Settings对话框中,确保在左窗格中选择了该文件名,从标签为Microsoft Foundation Classes的下列列表中选择Use MFC In A Share DLL,另将Allow per-configuration dependenies 也选上。然后单击OK,以在Visual C++中注册相应更改。

如果曾成功运行(因要修改,又添加了代码),把那个程序关掉。否则会发生致命错误。
lifanxi 2002-02-09
  • 打赏
  • 举报
回复
就是楼上说的那个理!所以要进行项目设置,把MFC的库加到链接的过程中去才行。一般选Use MFC in shared DLL就行了,如果一定要把MFC做为静态库连接到EXE文件才选Use MFC in static library。上面打错了,不是"static DLL"
mn_th 2002-02-09
  • 打赏
  • 举报
回复
我在想,你是不是用WIN32 application 项,来做mfc
lifanxi 2002-02-09
  • 打赏
  • 举报
回复
打开Project->Settings。把Microsoft Foundation Class下改成Use MFC in shared DLL.或Use MFC in static DLL.

69,336

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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