问个问题,最近在搞CAD的二次开发,用VC++6.0,在里面建了两个工程,其中工程1调用了工程2类下的一个函数

编译连接之后报错:unresolvedexternalsymbol"public:staticclassAcDbObjectId__cdeclCCreateEntity:... 编译连接之后报错:unresolved external symbol "public: static class AcDbObjectId __cdecl CCreateEntity::CreateLine(void)" (?CreateLine@CCreateEntity@@SA?AVAcDbObjectId@@XZ)
FullDebug/wang测试.arx : fatal error LNK1120: 1 unresolved externals

这是工程1引用的代码其中的一部分:

AcGePoint3d ptStart(0,0,0);
AcGePoint3d ptEnd(100,0,0);
CCreateEntity::CreateLine();
其中,CCreateEntity类是工程2创建的

这是我的头文件:
#include "StdAfx.h"
#include "StdArx.h"
#include "acdb.h"
#include "../cad二次开发基础文件/CreateEntity.h"

我用的工具包是objectarx2002,本来想就简简单单的弄个例子看看跨工程引用能用不,结果调试了一个下午也没成功,求高手大侠指点下子~
展开
 我来答
HoboSoft
2012-03-31 · TA获得超过162个赞
知道小有建树答主
回答量:292
采纳率:0%
帮助的人:304万
展开全部
缺少lib库的链接,在项目的link配置中添加包含CCreateEntity这个导出类的lib库链接。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
志远823
2012-03-26 · TA获得超过2296个赞
知道小有建树答主
回答量:913
采纳率:66%
帮助的人:1178万
展开全部
和VC6 没有关系, 我想是你CCreateEntity这个类没有导出吧? 还有一种可能是CCreateEntity的cpp文件没有加到工程中没参与编译导致连接不过.
追问
请教一下:你说的类没有导出指的是什么?CCreateEntity的cpp文件在工程1中是有的,还需要加到哪里啊?
追答
导出是指dll之间共享C++类,请参考__declspec(dllexport)方面的知识。
如果有的话,2就不是问题了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友703736dfc
2012-03-25 · 贡献了超过239个回答
知道答主
回答量:239
采纳率:0%
帮助的人:56.5万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式