Zero Lee的专栏

从非MFC扩展DLL中导入一个自定义的类

/////////////////////////////////////////////////////////////////////////
该解决方案旨在提供一种能够从非MFC扩展DLL中导入一个自定义的类的方案。

自定义的类从某种意义上来讲,也是一种用户自定义的数据,形如struct。
基于此考虑,完全可以从非MFC扩展DLL中导入非MFC的用户自定义的类。

方案如下:
1) 首先建立一个DLL( WIN32 DLL)工程,创建头文件*.dll,自定义一个类,
在类的前面添加"__declspec(dllexport)"关键字,表示该工程到处这个类。
例如: class __declspec(dllexport) myClass ...

2) 在其实现文件中,添加头文件"#include "*.h"",并实现相应的类实现部分。

3) 编译执行生成*.dll文件,将其COPY到应用测试工程的执行目录下(debug/release)
下,COPY DLL工程的头文件*.h到应用测试工程的目录下,添加进项目中,并将其中的
"__declspec(dllexport)"修改为"__declspec(dllimport)"。

4) 在其实现文件中添加头文件"#include "*.h"",然后对其导入的类进行相应的操作。

5) 编译运行测试程序,便可以实现类相关的操作。

NOTE: 对于静态/动态链接到MFC的规则DLL也可以达到同样的效果,导入自定义的类。

posted on 2006-09-24 15:55 Zero Lee 阅读(931) 评论(1)  编辑 收藏 引用 所属分类: CC++ Programming

评论

# re: 从非MFC扩展DLL中导入一个自定义的类 2008-01-29 17:21 Hoheart

有没有搞露掉一些步骤啊?不行啊!!  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理