在VS2010中MFC扩展DLL导出CWnd的子类,外部程序调用时出现LNK2019错误,找不到构造和析构函数,但是明明已经在CPP里定义了,并且DLL编译正常,请问怎么办~~
#pragma once
// MyView
class MyView : public CWnd
{
DECLARE_DYNAMIC(MyView)
public:
MyView();
virtual ~MyView();
protected:
DECLARE_MESSAGE_MAP()
};
啥也没有就报错
HJJZImgViewer.obj : error LNK2019: unresolved external symbol "public: __thiscall MyView::MyView(void)" (??0MyView@@QAE@XZ) referenced in function "public: __thiscall CHJJZImgViewer::CHJJZImgViewer(class CWnd *)" (??0CHJJZImgViewer@@QAE@PAVCWnd@@@Z)
1>HJJZImgViewer.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall MyView::~MyView(void)" (??1MyView@@UAE@XZ) referenced in function "public: virtual __thiscall CHJJZImgViewer::~CHJJZImgViewer(void)" (??1CHJJZImgViewer@@UAE@XZ)
在VS2010中MFC扩展DLL导出CWnd的子类,外部程序调用时出现LNK2019错误,找不到构造和析构函数
答案:3 悬赏:80 手机版
解决时间 2021-01-27 22:13
- 提问者网友:最美的风景
- 2021-01-27 04:06
最佳答案
- 五星知识达人网友:一叶十三刺
- 2021-01-27 04:48
你可以尝试将构造函数和析构函数一起导出,并且,将编译DLL文件时生成的LIB文件添加到调用DLL的项目中.
如果还不行,请将定义DLL的头文件贴出来分析.
------------------------------------------------------------------
补充:
MFC扩展DLL只能由MFC的应用程序调用,请问你调用DLL的程序是什么类型?
如果还不行,请将定义DLL的头文件贴出来分析.
------------------------------------------------------------------
补充:
MFC扩展DLL只能由MFC的应用程序调用,请问你调用DLL的程序是什么类型?
全部回答
- 1楼网友:痴妹与他
- 2021-01-27 07:43
贴代码,没有代码没有真相
- 2楼网友:痴妹与他
- 2021-01-27 06:14
你好!
HJJZImgViewer,需要把整个类都export出来,并且,你需要在使用的工程中加入dll对应的lib才可以
希望对你有所帮助,望采纳。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯