您的位置:首页 > 移动开发

基于.Net的mapinfo二次开发

2007-12-05 08:59 239 查看
 
2、MapInfo回调技术的开发平台相关特性
.NET Framework是一种在Windows平台上编程的新架构——一种新的API,包含通用语言运行时(CLR)和框架类库(FCL)。微软公司主要是为了实现“向后兼容”[2].NET并没有推翻之前的软件,它仍然支持现有的软件,即实现向前兼容。另外,现有的软件组件“在Windows上的软件通信,几乎都是使用COM实现的”[2].NET提供了支持现有COM组件的包装器(wrapper),以便.NET组件与之通信。。因此,以方便支持今后出现和扩展的新技术,以使开发人员可以轻松编写优秀软件而推行的新平台,是一种新开端。但
2.1 OLE支持的回调
如引言中所言,.NET之前的MapInfo回调其实是OLE技术结合非.NET开发平台实现的。OLE技术,举例描述,它在很大程度上仅是把不同类型的办公文档链接在一起,所以利用它可以把一个小Excel电子表格放在Word文档中。相关的开发平台如Delphi可以通过编程的方式实现回调这一过程。具体实现的过程,请参见[1,3],此类技术文章在相关技术网站或论坛上较多,因不是本文重点就不再赘述。
2.2 .NET支持的COM回调
COM(组件对象模型)是作为OLE开发出来的,之后,它逐步演化为COM、DCOM(分布式组件对象模型)和最终的COM+。COM+是一种复杂的技术,它是几乎所有组件通信方式的基础,实现了事务处理、消息传输服务和对象池。随着新功能的加入,它就会比以前更加复杂,这也是导致.NET Framework产生的直接原因。
而.NET要实现MapInfo回调,必须将MapInfo的COM回调接口进行包装,这个过程已经脱离了OLE二次开发的技术范畴,经过包装的COM组件已经具备.NET组件的一切特性,因而说.NET实现MapInfo回调过程其实是基于.NET组件通信技术的具体实例,因而该回调技术已经不同于前期相关开发平台的OLE开发方式,因而在继续探讨之前必须探讨一下这个所谓“回调技术的开发平台相关特性”。 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息