- 4
- 0
- 约5.22千字
- 约 8页
- 2017-06-13 发布于湖北
- 举报
C++和C#之间互相调用经验详谈先说说程序大概组织逻辑。主程序有一套公用接口(其实就是纯虚类),在加载DLL时候将此接口传到DLL中,这样子模块在需要的时候就可以调用父的逻辑了,至于父调子,那就更简单了,主程序有一个纯虚类,子模块都继承此接口,并进行重写,主程序按照一定的顺序分别调用,这样父与子的逻辑交互就完成了,这些对都是C++程序来说,这当然没问题。现在问题是,要嵌入。NET的类库,由此引发一系列问题……
软件是以C++为父,DLL作为子的项目。
开发环境:WIN7 64BIT+VS2010+MFC+ATL+COM.
.NET环境下先以C#为例,其他的大部分一样下,不排除做一些简单或者复杂的修改。
下面正式开始把。
1. 动态加载 即父调子。
COM确实是好东西(他的褒与贬我们无作评论),她的语言无关性,不仅是我们实现动态加载的关键,更是实现加载其他。NET类库的核心。如VB.NET.有了她,才是这一切皆有可能。
由于。NET下的类库(DLL),和传统的WIN DLL 不太一样,毕竟托管的东西。她一些函数对外是不可见的,但对COM可见。因为我们就以COM方式定义一套接口,并把此接口当成普通C++的纯虚接口,来完成父到子的调用。
这一点不论在理论上、代码上都比较简单,而且网上大多也是这样子,所以我们直接上代码。
如下为COM接口定义。
[C
您可能关注的文档
最近下载
- 青少年活动中心运营管理方案.docx VIP
- 110kV〜750kV架空输电线路施工及验收规范.docx VIP
- 《数据资产—数据质量评估标准》.docx VIP
- 26春《单元测试卷》语文 人教版 2下(A4)含答案.docx VIP
- 【智能控制理论讲解】智能控制理论与方法.ppt VIP
- 2025年广西壮族自治区中考语文真题卷(含答案与解析).pdf VIP
- 小学数学一年级下竖式计算练习题(进位加退位减不进位退位).pdf VIP
- 认真认识党史国史 努力争做合格党员 .docx VIP
- (新教材)2026年北师大版七年级下册数学 问题解决策略:特殊化 课件.pptx
- 大学英语四级考试2024年6月真题(第一套).docx VIP
原创力文档

文档评论(0)