- A+
本篇文章主要描述使用Advanced Installer打包程序或服务,要点如下:
1.安装windows服务
2.注册服务需要的DLL组件
3.根据用户的选择,安装指定的服务或程序
首先简要说明Advanced Installer这个打包软件。这是一个很专业的打包工具,可操作性很强。尤其是它的自定义操作设置,通过自定义操作可以让你的程序去执行脚本或bat文件,这对于我们的程序做校验或其他一些命令操作帮助巨大。接下来开始进入正题,安装windows服务。打开Advanced Installer软件,创建新项目,在通用那选择企业版,语言选择简体中文,然后单击创建项目。
进入到产品详细界面,填写名称和发布者,然后单击左侧的"文件和文件夹",进入到文件资源详细界面。右键单击"应用程序文件夹",选中"添加文件夹",选择你要打包的程序。如果程序中含有xml文件或InI文件,会提示你作为配置项导入,如果在安装的时候需要做一些配置(如数据库的连接),你就要勾选,否则不勾选。(本篇不做此功能)
之后应用程序文件夹下面就有了你要打包的程序了。你也可以为你的程序包重命名。
接下来准备第二部分,单击左侧树形菜单的“组织”,进入到其详细界面。右键单击"产品",选中"新建功能",创建一个新功能。标识符和描述根据需要填写。
然后单击"文件和文件夹"项,回到之前的文件资源页面,选中程序文件夹,右键出现菜单, 选中“移动到“=>”移动到功能"。就会出现之前创建的功能,选择你要的功能,把程序文件移动到该功能下。功能和程序文件夹最好是一一对应。
接着我们准备第三部分,选择左侧的树形菜单中的"服务",进入到服务配置界面。右键"安装服务“,选择”新服务“,然后弹出一个对话框让你选择文件,选中你的服务文件夹下的应用程序就行。这样服务部分就准备好了。这个操作是针对服务程序的,如果打包程序没有服务,就不用操作此部分,略过即可。
还有一点就是服务的名称不是随便填写的,如果服务程序里面关联了服务的名称,一定要把名称设置成关联的名字,否则无法启动,切记,切记...(如下图,服务程序默认应该是CCS.exe,但真实名称应该是图中所写)
安装后立即启动,勾选启动,否则安装服务后需要手动启动。
现在所有准备工作已完成。然后我们去操作服务需要注册的组件。
回到"文件和文件夹"详情页,找到需要注册组件的服务文件夹,选中要注册的DLL文件,右键选择属性,在属性对对话框界面找到"注册",把第一个复选框勾选。这样在安装程序是就会自动注册该组件了。
接着讲解根据用户的选泽安装指定的服务或应用程序。
在左侧的树形列表中,选中"对话框",右侧显示对话框的详细设计界面。在”首次安装“文件夹下,可以添加对话框以及其它控件。现在只是制作一个简单展示选择安装示例。在“准备安装”的界面上,从工具箱拖拽两个图像复选框到对话框上。
在右侧的属性列表中【属性名称】和【值】,这两个属性很重要,主要根据这两个属性可以判断用户的选择,只要把这个属性绑定到功能上就能实现指定安装了。
之后选择左侧树形列表中的"组织",选中其中的功能项,在“安装行为”那做绑定。如下图所示:
这样功能"S1"就与复选框1做了绑定,同理,将S2与复选框2做绑定。最后构建生成一个exe文件,打包程序就完成了。