全国高分辨率土地利用数据服务 土地利用数据服务 土地覆盖数据服务 坡度数据服务 土壤侵蚀数据服务 全国各省市DEM数据服务 耕地资源空间分布数据服务 草地资源空间分布数据服务 林地资源空间分布数据服务 水域资源空间分布数据服务 建设用地空间分布数据服务 地形、地貌、土壤数据服务 分坡度耕地数据服务 全国大宗农作物种植范围空间分布数据服务
多种卫星遥感数据反演植被覆盖度数据服务 地表反照率数据服务 比辐射率数据服务 地表温度数据服务 地表蒸腾与蒸散数据服务 归一化植被指数数据服务 叶面积指数数据服务 净初级生产力数据服务 净生态系统生产力数据服务 生态系统总初级生产力数据服务 生态系统类型分布数据服务 土壤类型质地养分数据服务 生态系统空间分布数据服务 增强型植被指数数据服务
多年平均气温空间分布数据服务 多年平均降水量空间分布数据服务 湿润指数数据服务 大于0℃积温空间分布数据服务 光合有效辐射分量数据服务 显热/潜热信息数据服务 波文比信息数据服务 地表净辐射通量数据服务 光合有效辐射数据服务 温度带分区数据服务 山区小气候因子精细数据服务
全国夜间灯光指数数据服务 全国GDP公里格网数据服务 全国建筑物总面积公里格网数据服务 全国人口密度数据服务 全国县级医院分布数据服务 人口调查空间分布数据服务 收入统计空间分布数据服务 矿山面积统计及分布数据服务 载畜量及空间分布数据服务 农作物种植面积统计数据服务 农田分类面积统计数据服务 农作物长势遥感监测数据服务 医疗资源统计数据服务 教育资源统计数据服务 行政辖区信息数据服务
Landsat 8 高分二号 高分一号 SPOT-6卫星影像 法国Pleiades高分卫星 资源三号卫星 风云3号 中巴资源卫星 NOAA/AVHRR MODIS Landsat TM 环境小卫星 Landsat MSS 天绘一号卫星影像
有关MO(MapObjects)打包的文章在网上看了好多,可是拿来一试没有一个可以真正做得尽如人意的,经过一番的折腾,兄弟我终于摸索出一套MO打包切实可行的方法,今天我就给MO打包来一个彻底的了结,希望各位能够喜欢。
有关MO(MapObjects)打包的文章在网上看了好多,可是拿来一试没有一个可以真正做得尽如人意的,经过一番的折腾,兄弟我终于摸索出一套MO打包切实可行的方法,今天我就给MO打包来一个彻底的了结,希望各位能够喜欢。
这个打包程序是用InstallShield6.22来完傻模訫O2.2为例,今天有关InstallShield6.22的一些应用还请给位自行掌握,在这里我就不再罗嗦了,因为使用起来比较简单。
首先我们来看看MO2.2的一些组件文件,它的组件文件最常见的就有两种,一种是*.ocx一种是*.dll,当然还有其它格式的,只是这两种是开发所必须,如果你想让你的MO2.2程序能够正常运行的话。
其实这两种文件在InstallShield6.22中有可以分为两种,一种是需要注册的,一种是不需要注册的。
下面是需要注册的一些文件 ①:Mo20.ocx,MO21Legend.ocx,MO21ScaleBar.ocx,weblink.ocx,MemTable21.dll,MemTableServer.dll,Street20.dll,Vpf20.dll,InfoTable20.dll,JetTable20.dll,ADOTable20.dll,aiimage20.dll,CAD20.dll,Coverage20.dll,MoImageCat.dll,MoSde81.dll,MoSde82.dll,MoSde83.dll,MoSde302.dll,MoMrSID.dll,MoSde80.dll,OdbcTbl20.dll,Shape20.dll
下面是那些不需要注册的文件 ②:dforrt.dll,efileio.dll,elib.dll,ergxlib.dll,ethrlib.dll,ISO8211.dll,libtiff.dll,mobase.dll,Moe.dll,mofeat.dll,mogridio.dll,pe80.dll,Pe81.dll,pe82.dll,pe83.dll,Sde30.dll,Sde80.dll,Sde81.dll,Sde82.dll,Sde83.dll,Sg80.dll,Sg81.dll,Sg82.dll,Sg83.dll,ShapeLT20.dll,AFLT20.dll,AiSetup.dll,CADE.dll,CADPI.dll,pe.dll,Sg.dll,AF20.dll,mtch.dll,EDGE32.dll,sdeora8isrvr81.dll,sdeora8isrvr82.dll,sdeora9isrvr82.dll,sdesqlsrvr81.dll,sdesqlsrvr82.dll,Mo20.lic
以上这些文件,均可在安装了MO2.2的机子的X:\Program Files\Common Files\ESRI(X代表当前操作系统所在的目录)目录下找到。下面就让我们行动起来吧,请看一下步骤:
1、在InstallShield6.22的“File Groups”视图下新建两个文件组“MOOCX”和“MODLL”,在前一个文件组中插入文件 ①,后一个文件组中放入文件②。
2、在“File Groups”视图中选中“MOOCX”文件组,在右边将它的“Sel-Registered”值设为“Yes”,文件组“MODLL”正好相反设为“NO”。
3、需要特别注意的一点那就是,一定要将 “MOOCX”和“MODLL” 文件组的“Destination”值设置为相同的目录(比如TARGETDIR),不然就不能够正确的完成MO2.2的注册。
这样就完成了MO2.2基本控件的注册安装问题简单吧,一句代码都不用写。
接下来我们就来看看MO2.2字体的安装吧,看过好多例子都是通过写注册表的启动项,然后重启,以此来达到字体的安装。就我个人认为这种办法实在是麻烦,而且成功的机率不是很高。
在这里我给大家介绍一种,通过给操作系统发消息的方发法来完成MO2.2字体的安装。这个方法就稍微的麻烦一些了,需通过写脚本来实现,其实也不难,下面就看一下据体操作吧。
1、 现在把InstallShield6.22切换到“Scripts”视图下,在它右面的编辑框中的 “// your DLL function prototypes”的下一行添加下面一行代码:
prototype number GDI32.AddFontResource(BYREF STRING);
并在“// your global variables”的下一行声明两个常量:
#define HWND_BROADCAST 0xFFFF
#define WM_FONTCHANGE 0x001D
2、 然后在“// your script function prototypes”的下一行声明一个函数:
export prototype number InstallFonts(string szFontsName, sting szFontsFiles);
并在脚本最后将这个自定义函数的实现完成,具体代码如下:
function number InstallFonts(szFontName, szFontFiles)
string szKey;
begin
szKey = "Software\\Microsoft\\Windows";
if (SYSINFO.WINNT.bWinNT) then
szKey = szKey + " NT\\CurrentVersion\\Fonts";
elseif (SYSINFO.WIN9X.bWin98) then
szKey = szKey + "\\CurrentVersion\\Fonts";
endif;
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
RegDBSetKeyValueEx (szKey,szFontName,REGDB_STRING,szFontFiles,-1);
AddFontResource(szFontFiles);
//向操作系统发送安装字体的消息
SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
end;
这样整个安装字体的函数就全部写完了,不是很难吧。 3、 首先,在InstallShield6.22的“File Groups”视图下新建一个“MOFonts”文件组,将它的“Destination”值设置为“<WINDIR>Fonsts”,在安装了MO2.2的机子上的“Fonts”目录下,把MO2.2的所有字体都找到放到“MOFonts”文件组中。接下来就是适时的调用InstallFonts这个函数进行字体的安装了。在OnFirstUIAfter函数中以下面的方法进行调用InstallFonts就可以了,具体操作:
InstallFonts("ESRI Cartography (TrueType)","Esri_1.ttf");
InstallFonts("ESRI Environmental & Icons (TrueType)","Esri_2.ttf");
InstallFonts("ESRI Geometric Symbols (TrueType)","Esri_3.ttf");
......其它的字体也可以以此来完成安装。
最后,还要说的就是,有的朋友要用到MO2.2能够支持的更多的图形格式的话,只是打包上面所列出的那些文件是远远不够的。为了能够让你的程序支持更多的图形格式,建议你把X:\Program Files\Common Files\ESRI\MO_image(X代表当前操作系统所在的目录)整个目录都放在“MODLL”这个组件下,最好不要改变它的目录结构,当然为了节省空间你可以删掉里面的pdf文件。这样以来你就可以在你的程序中处理所有MO2.2所能够支持的图形格式了。