各位,俺是新手,帮俺看看这个Link2001错误怎么解决?

o_racle o_racle 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
有两个DLL,GraphDll和RectDll。
在GraphDll中,Graph的定义如下
class AFX_EXT_CLASS CGraph : public CObject
{
DECLARE_DYNCREATE(CGraph);
public:
CGraph();
virtual ~CGraph();
virtual void Draw(CDC* pDC, BOOL bSec);
};
IMPLEMENT_DYNCREATE(CGraph, CObject)

在RectDll中,CRectangle的定义
class AFX_EXT_CLASS CRectangle : public CGraph
{
DECLARE_DYNCREATE(CRectangle);
public:
CRectangle();
virtual ~CRectangle();
virtual void Draw(CDC* pDC, BOOL bSec);
};
IMPLEMENT_DYNCREATE(CRectangle, CGraph)

在RectDll中已经静态装载了GraphDll.
编译GraphDll时,一切OK。
在编译RectDll时,会出现下面可恶的Link2001错误,各位帮帮忙吧。
--------------------Configuration: RectDll - Win32 Debug--------------------
Linking...
Creating library Debug/RectDll.lib and object Debug/RectDll.exp
Rectangle.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CGraph::classCGraph" (?classCGraph@CGraph@@2UCRuntimeClass@@B)
Debug/RectDll.dll : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

RectDll.dll - 2 error(s), 0 warning(s)
...全文
评论 11
收藏 已收藏
分享
返回顶部
o_racle
进程/线程/DLL 15,465 成员 49,169 内容