- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mapgis k9 二次开发基础知识 个人总结 强烈推荐
MAPGIS二次开发基础知识
一、手动注册组件与注销组件
COM以及客户应用程序所需的、用来定位组件及对组件进行实例化的信息存储在
Windows的注册表(Registry)里。因此,在使用组件之前要对组件进行注册,
只有成功注册才能引用该组件,其具体步骤为:
1.将包容组件的DLL文件放入MAPGIS PROGRAM 目录下,假设物理路径为:
D:\mapgis65\program\ MapGisBasCom1.dll
2.运行注册表程序注册组件 Windows开始菜单-〉运行:
regsvr32 D:\mapgis65\program\MapGisBasCom1.dll 注册成功与否将有对话框弹出。
3.注销该组件方法为:
regsvr32 /u D:\mapgis65\program\MapGisBasCom1.dll
二、Visual Basic中嵌入对象类型库
为了使Visual Basic能够访问MAPGIS对象定义,应该在Visuai Basic项目或模块中嵌入
MAPGIS对象类型库。如果想把一个Visual Basic对象声明为MAPGIS对象类型,要求嵌入
MAPGIS对象类型库, 如果想把一个Visual Basic对象声明为一般Object类型,就不必嵌
入MAPGIS对象。
为了在项目中嵌入MAPGIS对象类型库,通常执行这些步骤:
从Project(工程)菜单, 选择References, References对话框出现, 选中复选框嵌入
MapGisBasCom1 Type Library文件。这要求VisualBasic环境或代码模块编辑器是活动
的,正在运行。
三、使用MAPGIS对象
可以使用Visual Basic编写使用MAPGIS对象的程序。在Visual Basic程序中使用MAPGIS
对
象所要求的步骤是:
1.嵌入MAPGIS对象类型库。
2.建立一个MAPGIS对象。
3.使用MAPGIS对象和包含的其他对象。
4.释放MAPGIS对象。
使用一个句点(.)把对象变量与该对象的属性、方法和集合分开。
四、使用C++和COM函数
可以使用C++和COM函数编写使用MAPGIS对象的程序。在C++程序中使用
MAPGIS对象所要求的步骤是:
1.嵌入MAPGIS对象和COM头文件,并链接到COM库。
2.初始化C0M库。
3.建立一个MAPGIS对象。
4.使用MAPGIS对象和包含的其他对象。
5.释放MAPGIS对象。
6.解除C0M库的初始化。
使用成员选择运算符(-)把“对象指针”变量与属性、方法和集合函数分开。
嵌入MAPGIS对象
对MAPGIS对象编程的第一步是在项目中嵌入合适的类型库或头文件。
完整的MAPGIS对象类型库包含在MapGisBasCom1.h文件中,这个文件的默认路径:
D:\mapgis65\include\MapGisBasCom1.h
类型库含有关于所有MAPGIS对象、属性和方法的信息。
五、COM的调用
MAPGIS对象包括ANSI和Unicode这两个定制接口。使用ANSI接口时,所有MAPGIS对象字
符
串都是每个字符一个字节的ANSI字符串。使用Unicode接口时,所有MAPGIS对象字符串都
是每个字符两个字节的Unicode字符串。所有MAPGIS对象字符串都使用====BSTR字符串数
据类型。
默认情况下使用ANSI定制接口和ANSI ====BSTR字符串。如果想使用Unicode定制接口和
Unicode =====BSTR字符串,在嵌入所有头文件之前必须定义UNICODE和_UNICODE。
例如:
#define UNICODE
#define _UNICODE
在字符串值两端使用TEXT(“str”)宏。默认情况下,这些是ANSI“Str”字符串。在定
义了UNICODE和_UNICODE时,这些是Unicode L“Str”字符串。在32位0LE中,所有BSTR
字
符串是Unicode字符串。为了使C++程序能够访问MAPGIS对象定义,除了嵌入Windows和
0LE头文件之外,还必须嵌人MAPGIS==.H和MAPGIS==.H头文件。默认情况下,MAPGIS头文
件位于======\INCLUDE目录中。
Visual C++项目的Include设置或INCLUDE环境变量应指向含有这些文件的目录。
必须嵌入以下头文件:
1. MapGisBasCom1_i.c
2. MapGisBasCom1.h
例如:
#i
文档评论(0)