请教以下错误如何解决?
我用VC6 MFC 做小程序时提示有以下错误:
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
Debug/bott.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
请问这是因为什么原因?应如何解决?
谢谢!小弟的分数不够了,请原谅!
源程序如下:
#include "afxwin.h"
#define IDB_BUTTON_1 101
class CButtonApp : public CWinApp
{
public:
virtual BOOL InitInstance();
};
CButtonApp ButtonApp;
class CButtonWindow:public CFrameWnd
{
CButton* button;
public:
CButtonWindow();
};
CButtonApp::InitInstance()
{
m_pMainWnd=new CButtonWindow();
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}
CButtonWindow::CButtonWindow()
{
CRect r;
Create(NULL,"CButton Test!",WS_OVERLAPPEDWINDOW,CRect(200,200,400,400));
GetClientRect(&r);
r.InflateRect(-20,-20);
button=new CButton();
button->Create("Hello World!",WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON
,r,this,IDB_BUTTON_1);
}
问题点数:10、回复次数:8Top
1 楼drinkeryj()回复于 2001-01-09 12:32:00 得分 0
__endthreadex和__beginthreadex所在的头文件,你并没有包含在你的程序文件里,这是
两个Sdk函数。它们具体包含在哪个头文件中我有点记不清了,好象是windows.h,另外,如果
包含了它后还有上述错误,那你还得在VC中Probject/setting/link中加上和该头文件对应
的.lib文件。
如果你的项目中并没有文件名为nafxcwd.lib的文件,那你就试着将nafxcwd.lib加入上述
选项里。Top
2 楼silver(Bai)回复于 2001-01-09 12:53:00 得分 0
在Project->Setting->Link->Object/library modules里面加上
MSVCRT.LIB LIBCMT.LIB
就可以啦Top
3 楼drinkeryj()回复于 2001-01-09 13:22:00 得分 0
我纠正一下,刚才去查了一下MSDN,发现头文件是PROCESS.h,对应的LIB是MSVCRT.LIB,具体办法和以前说的一样。Top
4 楼Fesd(傻蛋)回复于 2001-01-09 13:22:00 得分 0
要使用 __endthreadex __beginthreadex
需要:
#include "Process.h"
链接LIBCMT.LIB 或 MSVCRT.LIBTop
5 楼newx(Royale with Cheese)回复于 2001-01-11 23:59:00 得分 0
在VC 菜单 Project|settings...|c/c++ (tab)|code generate (listbox)|Use run-time library (listbox)中选用 (Debug) Multithreaded xxx!Top
6 楼Robert2001(Robert2001)回复于 2001-01-12 11:40:00 得分 0
#include <process.h> /* _beginthread, _endthread */
Libraries
LIBCMT.LIB Multithread static library, retail version
MSVCRT.LIB Import library for MSVCRT.DLL, retail version
Top
7 楼xxwwdd(爱好者)回复于 2001-01-12 20:41:00 得分 10
在Project->Setting->General中的Microsoft Foundation Classes中选
Use MFC in a Static Library 或 Use MFC in a Shared DLL,即可。Top
8 楼wyzegg(蛋)回复于 2001-01-12 22:54:00 得分 0
你的工程一些东西没有八成是LIB,也有可能是OBJTop




