`
bcyy
  • 浏览: 1884991 次
文章分类
社区版块
存档分类
最新评论

打包ArcGIS Engine应用程序的几种方式

 
阅读更多

1.使用InstallShield打包ArcGIS Engine应用程序

ArcGIS Engine开发的应用程序必须要在装有ArcGIS Engine运行时并且正确的授权的机器上才可以运行。因此,在制作安装包的时候可以把ArcGIS Engine运行时一起打进来,用户在安装程序时,只需要执行一个安装文件就可以正确的运行应用程序了。 利用InstallShield10.5打包的基本思路如下:
1)先将自己的程序打包进来;
2)安装ArcGIS Engine运行时;
3)安装ArcGIS Engine运行时补丁;
4)检查系统文件夹下的服务文件是否正确的写入服务;
5)对ArcGIS Engine运行时进行授权。

批处理文件?
如果在InstallShield里面的话,有个直接调用Windows的Installer的函数的。只需要把参数填对就可以了。
如果要写批处理文件的话,感觉是这种格式:
@echo off ////开头都有这个
rem -----------------------------------
rem DevCpp resp. MinGW location...
rem -----------------------------------
set DEV_PATH=d:\tools\develop\dev-cpp
PATH=%DEV_PATH%\bin

2.使用WinRar打包打包ArcGIS Engine应用程序
准备工具:WinRar 3.7简体中文版(其他版本也可)
整理好要打包文件:ArcGIS Engine Runtime 9.2 ;ArcGIS Engine Runtime 9.2 sp2 ;ArcGIS Engine Runtime 9.2中文包;ArcGIS Engine Runtime 9.2授权文件;自己的程序;
基本原理:利用Winrar制作自解压程序,将安装所需要的文件都包含进来,然后根据需要运行一定的安装脚本。
安装步骤:
1)用户指定安装路径;
2)执行ArcGIS Engine Runtime9.2 的安装程序;
3)执行补丁安装程序;
4)执行中文包;
5)授权;
6)安装自己的程序,包括文件复制和DLL注册等;
在WinRar里面,我们可以很容易完成第一步。而对于后面的几个步骤则需要专门的安装程序执行特定的脚本方可实现。这里先介绍如何Winrar来做自解压包,关于安装脚本,稍后再介绍。
第一步:把所有需要的文件(包括我们后面所介绍的安装程序,现在假定名字叫做setup.exe)全部选中,然后将他们添加到压缩文件。出现如下图的界面,选中“创建自解压格式压缩文件”。这时候,压缩文件的名字的后缀就变成了exe。
第二步:切换到"高级"页面当中去,点击“自解压选项”。
第三步:在这里,如果在“解压路径”当中填入一个路径,那么安装的时候,就会直接将文件解压到那个路径当中去,默认的是“在“Program File””中创建。在这一页的下方,有一个叫做“安装程序”的frame,一个是安装前执行,一个是安装后执行。在这里,我们就可以把自己写的安装程序加进来了。根据自己的需要,选择是在解压前执行还是解压后执行。这里我们选择解压后执行。直接把“setup.exe”填到文本框中即可。最后直接点击“确定”,这样,安装包就制作完成了。
第四步:安装程序的制作。
由于解压后,所有的文件都在同一个目录下。这里的安装程序就可以用我们所熟悉的任意一种语言和开发工具来写了。不过有一条值得注意的,就是你的安装程序必须是最简单的,不依赖其他运行时库的程序。因此,比较理想的是将AE的安装过程写成一个批处理文件。这里我使用VB6写了一个简单的控制台程序。然后借助VB的shell函数即可执行AE自己的安装程序。例如:
sub main()
shell "cmd /k " & App.path & "\ArcGIS Engine Runtime 9.2\setup.exe & " & App.path & "\ArcGIS Engine Sp2\setup.msp " '''''安装AE运行时及其补丁
end sub
如果需要注册一些DLL的话,我们同样可以借助VB6的shell使用windows的RegSvr32程序来进行DLL的注册,其具体的命令参数,各位可到参看微软的帮助文档。至于其他的文件复制、删除等功能均可使用VB6的文件操作函数。 编译链接后生成EXE文件即可。
最后补充一条,通过winrar我们还可以给自己的程序在桌面或者程序组当中添加快捷方式,以及制定安装程序的图标。这些功能,各位可以自己去研究一下,Winrar还是相当强大的。

3.使用 ArcGIS Engine Runtime 制作安装包
用ArcGIS Engine 开发的软件在分发前可使用Wise、InstallShield打包工具制作安装包,以下介绍在用 ArcGIS Engine Runtime制作打包文件时的无界面参数。
1 )执行安装时的参数
Msiexec.exe /i "%MSIPATH%" /qn ADDLOCAL= %Feature%
MSIPATH 是Engine的安装路径包括msi包文件名
Feature 表示安装时的选项多个feature用 逗号隔开
feature 描述
ArcEngine ArcGIS Engine
JavaRuntime ArcGIS Engine-Java Runtime
DotNetRuntime ArcGIS Engine .NET Runtime
2 )安装后license的 注册
在安装路径下的 BinSoftwareAuthorization.exe 是注册license的执行文件
有三个常用参数
-p <选择注册项>
IMS
SDE
ENGINE
DEVKIT
SERVER
-LIF <选择注册文件>
-S 无界面运行
3 )sample
以下是一个无界面安装的批处理安装了Myapp 和 Engine 并加入了Engine dotnet的运行包
set MSIPATH_ENGINE = \CDROMARCENGINE9SETUP.MSI
set MSIPATH_CUSTOM = \CDROMMyAPPSETUP.MSI
Msiexec.exe /i "%MSIPATH_ENGINE%" /qn ADDLOCAL=ArcEngine,DotNetRuntime
Msiexec.exe /i "%MSIPATH_CUSTOM%"
start c:ArcGISbinSoftwareAuthorization.exe -lif "mypathmylicense.ecp" -s


总体来说InstallShiled的功能是十分强大的。但另一方面,功能过于强大也就意味着操作相对就复杂一些。俗话说得好“杀鸡焉用宰牛刀”,对于一些简单的操作,我们可以使用一些简单的工具来完成我们的工作。

分享到:
评论

相关推荐

    ArcGIS Engine应用程序开发

    ### ArcGIS Engine应用程序开发知识点详解 #### 一、ArcGIS概述与组件介绍 **ArcGIS**是美国ESRI公司开发的一套完整的地理信息系统(GIS)软件解决方案,它为用户提供了一个全面且灵活的地理数据管理、分析及展示...

    ArcGIS Engine 学习资料

    ArcGIS Engine是一款强大的GIS(地理信息系统)开发工具,由Esri公司提供,它允许开发者创建桌面、移动和Web应用程序,将地图和地理处理功能集成到自定义解决方案中。本资料集合了ArcGIS Engine的学习资源,包括各个...

    C#+arcgis Engine9.2开发的一个地图裁剪工具

    ArcGIS Engine是Esri公司提供的一款强大的GIS(地理信息系统)开发组件,它允许开发者创建定制的GIS应用程序。C#是一种面向对象的编程语言,以其易读性和强大的.NET Framework支持而受到广泛欢迎,特别适合用于开发...

    GIS开发实验 arcgis engine

    ArcGIS Engine是Esri公司提供的一款强大的GIS开发工具,它允许开发者构建具有专业GIS功能的应用程序。 ArcGIS Engine提供了丰富的API和控件,支持多种编程语言,如.NET Framework(C#、VB.NET)、Java、ActiveX等,...

    ArcGis开发从入门到精通

    10. 应用程序部署:学习如何打包和部署你的ArcGIS应用程序,以便在其他计算机上运行。 通过本书的学习,读者不仅可以掌握ArcGIS的基本操作,还能深入理解ArcGIS开发的原理和技术,从而能够独立开发GIS应用程序,...

    利用C#和Arcgis 构建GIS桌面端应用系统框架(代码)

    ArcGIS Desktop是其核心组件之一,提供了ArcMap、ArcCatalog和ArcToolbox等应用程序,供用户进行地图编辑、数据管理和地理处理。 构建GIS桌面端应用系统框架,通常会涉及到以下几个步骤和关键技术点: 1. **环境...

    ARCGIS实用开发教程

    在ARCGIS开发中,VB.NET是一种常用的编程语言,它与ARCGIS的集成使得开发者可以利用.NET Framework的强大功能来构建地理信息系统应用。VB.NET的语法简洁,对于新手来说易于上手,同时具备高级语言的所有特性,能够...

    蒋波涛插件式GIS应用程序框架的设计与实现全部源码

    《插件式GIS应用程序框架的设计与实现》是蒋波涛老师的一本专著,主要探讨了如何使用C#编程语言和Esri的ArcGIS Engine 9.2来构建灵活、可扩展的地理信息系统(GIS)应用。源码的提供使得读者能够深入理解书中的理论...

    AE+C#二次开发

    8. **部署与发布**:最后,你需要知道如何将开发的应用程序打包并部署到目标机器上,这涉及到ArcGIS Engine的授权和配置问题。 以上内容只是基于"AE+C#二次开发"主题的一般性介绍,实际的《ArcGIS_Engine9.2_+_C#...

    AE符号选择器(不要积分的,老是被篡改要分)

    在C#中,ArcGIS Engine提供了一套丰富的API,使得开发者能够创建交互式的桌面GIS应用程序。C#是一种面向对象的编程语言,具有语法简洁、类型安全以及.NET Framework的强大支持等特点,使得它成为开发GIS应用的理想...

    ArcEngine 开发资料

    9. **部署与发布**:完成开发后,需要将应用程序打包并部署到目标环境中。了解安装向导的创建、注册COM组件以及许可证管理等过程是必不可少的。 10. **性能优化**:对于大规模数据和复杂操作,性能优化是必须考虑的...

    三维服务发布与应用实战.pdf

    《三维服务发布与应用实战》一书主要探讨了在ArcGIS平台上如何进行三维服务的创建、发布和应用。ArcGIS是Esri公司开发的一款强大的地理信息系统,它支持二维和三维地图的制作、分析和共享。在3D领域,Esri通过引入...

    运用C#开发AE实例

    ArcEngine是Esri公司提供的一个GIS开发平台,允许开发者创建定制的地图应用程序。它提供了丰富的API,可以用来构建桌面、服务器和Web GIS应用。C#与ArcEngine结合,可以通过.NET Framework的COM互操作性,调用Arc...

Global site tag (gtag.js) - Google Analytics