说实话本想搞WPF+ArcEngine开发的,环境都搭建好了,突然发现貌似有很多授权的问题,唯恐部署软件后不能在其它客户端上使用,而且是项目开发,于是决定先暂时放下这个想法,待联系做研究性系统时再予以开发使用。好了,接下来我将以图解形式详细说明一下如何部署一个arcgis二次开发程序。
所需文件
首先,我先将我们所用到的文件及搭建环境要求列一下。
客户端系统环境:win xp、win7、win8
客户端系统需要安装:dotNetFx35、WindowsInstaller3.1、ArcEngine Runtime(需要许可证,如果没有授权许可的话是无法运行的,这个非常关键)
卸载:msiexec.exe(这个需要根据创建的程序定msiexec.exe是多少位)
这里为大家方便,我统一将所需的文件传到百度云中,跟大家分享。
注:本文所分享的文件仅供科研学习使用,未经授权,请勿进行商业有关的使用,否则后果自负
分享地址:http://pan.baidu.com/s/1i4BuuzV
分享文件用途如下图所示:
图1.1 文件用途图
部署步骤
2.1 项目部署解决方案创建
项目完成后就可以进行打包部署了。
这里声明一下,项目名字是帮人做论文时写的一个系统名字,不牵扯到商业的东西
首先,我们需要创建部署的解决方案,选择“文件“——>”添加“下的”新建项目“,创建解决方案。
图2.1新建项目
接下来为安装包重命名及选定位置
图2.2选定文件位置及命名
点击“确定”,这样我们就完成了部署程序解决方案的创建。
2.2 解决方案配置
接下来就是部署软件的配置了,右击“解决方案”(HASM),点击“属性”,然后进行相应的配置。
图2.3解决方案配置
打开配置,点击“系统配置”
图2.4系统配置
配置系统中已经勾选了两个系统必备的安装包,一般这两个win7以上都是安装了的,如果没有请从分享地址中下载安装。下边选项可以选择第一个,如果你已经有了安装包,如果没有的话可以点击第二个。建议选择第一种方式,然后如果没有在下载安装,这样的好处就是生成的安装包会小很多,更快一些。
图2.5系统必备安装包
点击“确定”,这样我们系统配置也完成了。
2.3 文件系统设置
文件系统中包括了三个部分:
1、应用程序文件夹
2、用户的“程序”菜单
3、用户桌面
首先我们先设置“应用程序文件夹“,右击“添加”——>选择“项目输出”,
图2.6项目输出
然后选择“主输出”,点击“确定”。
图2.7选择主输出
这样,我们程序中使用的dll文件与生成的exe将会列出来,然后我们需要将解决方法中的含有ESRI的dll排除,原因在于我们在客户端的机器上已经安装了ArcEngine Runtime,已经包含了这些dll文件。具体操作如下图所示:
图2.8排除dll
ok,到这里其实我们的安装程序已经初步成型。接下来,为了让我们的程雪更加完美,需要添加快捷键及卸载功能。
右击“主输出来自HASM”,然后创建快捷方式。
图2.9创建快捷方式
快捷方式可以重新命名,然后将快捷方式剪贴到用户桌面或者用户的“程序”菜单中,创建好了快捷方式后,不要着急下一步,为了更加perfect,我们还需要给快捷方式添加图标。首先,需要你有格式为ico格式的图标文件,然后将其拷到“应用程序文件夹”中。然后点击快捷方式图标,看属性项,设置Icon属性。
图2.10创建图标
点击Icon右方下拉菜单,浏览,选择应用程序文件加下的图标文件,如下图:
图2.11选择图标文件
确定后,快捷方式的图标也就制作完成了。
接下来,让我们来添加卸载功能,添加卸载后可以方便用户更加方便的卸载程序,而不需要麻烦的去找卸载程序功能。如下图所示添加msiexec.exe文件。
图2.12添加卸载文件
注意:这里我们选择32位的msiexec,因为我们生成的是x86程序
细心的读者应该看到还有一个需要设置的是发布的是选择release而不是debug,release是发布版本。
图2.13选择发布版本
添加后,我们可以给msiexec.exe重命名,然后创建快捷方式,同上,将快捷方式放到你想要的位置。
需要注意的是,这里我们还需要设置一下卸载快捷方式的Arguments属性,
这里需要借助部署解决方案的product code,然后在Arguments中添加:
/x productcode
如下图所示:
图2.14productcode
图2.15Arguments
ok,至此,我们的程序部署完毕!!
为了更加的perfect,我将在第三章进行更加完美的安装包说明。
验证客户端是否安装ArcEngine Runtime
选择菜单栏“视图“——>”编辑器”——>”启动条件“
图3.1启动条件-注册表搜索
点击添加注册表搜索,然后创建ArcEngineRuntime注册表。
图3.2 创建ArcEngineRuntime注册表
在创建的ArcEngineRuntime注册表的属性项中修改成:
==========================================
Property:默认值
Regperty:SOFTWARE\ESRI\ArcGIS Engine Runtime
Root:vsdrrHKLM
Value:RealVersion (注册表项)
图3.3ArcEngineRuntime属性修改
在启动条件选项中右击“添加条件“,添加ArcEngine启动条件。
图3.4 创建ArcEngine启动条件
在创建的ArcEngine启动条件属性项中修改成:
==========================================
condition:REGISTRYVALUE1=”9.3”
installurl:设置下载地址
message:提示信息
图3.5 ArcEngine属性修改
至此,vs2008下打包ArcEngine程序教程完毕!!
希望此文能帮助到你!
---共享万岁!!
参考文献:
5、AE安装部署以及监测ArcEngine runtime 9.3是否安装