计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

PowerBuilder和MapInfo的集成开发技术(1)

2014-03-30 01:00
导读:计算机应用论文论文,PowerBuilder和MapInfo的集成开发技术(1)论文样本,在线游览或下载,科教论文网海量论文供你参考: 摘要: 本文介绍了客户/服务器开发工具PowerBuilder和桌面地图信息系统
摘要: 本文介绍了客户/服务器开发工具PowerBuilder和桌面地图信息系统MapInfo集成开发的基本 方法 。重点讨论了集成开发中的一些关键技术的实现方法。
 
关键词:PowerBuilder,MapInfo,MapBasic,系统集成,OLE自动化,回调
 
0 引言 PowerBuilder 是一个面向对象的用于构造基于客户/服务器(Client/Server)数据库 应用 系统的开发工具,它通过ODBC可同时支持Sysbase、Oracle、Informix、SQL Server等多种关系数据库,具有强大的数据库应用程序开发功能,尤其是它提供的如数据窗口(Data Window)等工具,使其能够更加方便有效地访问与操纵数据库。MapInfo是由美国MapInfo公司推出的地理信息系统开发平台,其核心包括MapInfo Professional和MapBasic两个部件。通过MapInfo平台,能把大量信息直观地与地理图形有机联系起来,使枯燥的表格数据可视化,从而极大地方便了数据 分析 和辅助决策。利用PowerBuilder强大的数据访问与操纵能力和MapInfo的地图信息管理功能,结合Integrated Mapping技术、OLE自动化技术等,将MapInfo地图集成到PowerBuilder的应用中,可以迅速地开发出具有强大地图处理能力的应用程序,使数据库中繁杂抽象的数据快速、准确、灵活地显示于 电子 地图之上,将数据可视化,实现空间数据和属性数据的有机结合。1 开发框架使用PowerBuilder和MapInfo集成开发技术所开发的应用程序,称为集成的地图应用程序(Integrated Mapping Application)。在集成的地图应用程序中,以客户/服务器的开发模式,使用PowerBuilder开发的应用程序称为客户程序。客户程序运行在前台,通过OLE调用在后台运行的作为OLE自动化服务器的Mapinfo。在集成的地图应用程序中,根据MapInfo提供的Integrated Mapping接口,在PowerBuilder客户程序中使用Outbound OLE Automation(输出OLE自动化)技术,将MapInfo的地图窗口集成到客户程序中,从而使客户程序具备地图处理能力。客户程序使用MapInfo OLE自动化对象、MapBasic OLE自动化对象的有关属性和方法,通过MapInfo OLE自动化服务器对集成的地图窗口进行控制。图1给出了客户程序和服务器程序间的关系。

(科教作文网http://zw.ΝsΕAc.Com编辑整理)


图1 PowerBuilder客户程序和MapInfo服务器的关系2.建立PowerBuilder客户程序和MapInfo OLE服务器的连接建立PowerBuilder客户程序和MapInfo OLE服务器的连接在原理上是:在PowerBuilder开发的客户程序中,通过使用Outbound OLE Automation技术实现客户程序和MapInfo服务器的连接,借助OLE调用MapInfo服务器。具体实现上是:在包含地图窗口的框架窗口的Open事件中添加代码,创建一个新的OLEObject,而将MapInfo作为这个新的OLEObject的OLE服务器。要调用MapInfo服务,则需调用ConnectToNewObject()函数并传递OLE Programmable Object的程序标识,即“MapInfo.Application”://OLEObject对象的实例OLEObject MapInfo//接收错误代码Integer ErrCode//创建一个与MapInfo进行通信的OLE自动化对象MapInfo = Create OLEObject//连接OLE自动化对象到MapInfo服务器ErrCode = MapInfo.ConnectToNewObject("MapInfo.Application")If ErrCode
    上一篇:对人工智能科学的发展方向的一些看法 下一篇:没有了