最近有一个项目是c/s模式的,必须制作安装包,已达到客户使用的简单化。对于我一个以前没有做个安装包的人,在网上找了一些资料,加上自己的一点实践,终于做好了。
好在一开始就有了一个概念,制作安装包可以使用InstallShield,以前觉得这玩意神乎其神的,其实也没什么了,多查资料,多实践就好了。再一次验证了我的一个观点:对于我们开发者而言,知道某种技术或者说工具的用途和概念,比我们知道怎么用他更有益。因为技术和工具太多,我们不可能一次性全部把他们全部学会,也没必要,只有当我们需要做一些事情的时候,我们知道某种东西可以更加方便的实现我们的需求的时候,我们再去学他,这样就事半功倍了。
呵呵,扯了大半天。开始讲述一下大概过程和涉及到的关键东西吧
1、当然是下载一个InstallShield安装一下咯,我的是InstallShield 2010 Premier Edition with version 16
2、新建一个项目吧,这里我们新建一个Windows Installer下的InstallScript MSI Project,至于每个项目的区别就网上查资料看看了。输入项目名称,选择存储路经,确定ok
3、 工具栏下面有三个选项卡,分别是Start Page、Project Assistant和Installation Designer。其中Project Assistant是一个向导式的安装包制作流程,可以完成基本的打包等工作。Installation Designer则是更加具体,功能更加强大的安装包制作方式,可以采用脚本的方式控制安装步骤的执行。我们可以采用Project Assistant和Installation Designer相结合的方式来完成这次制作过程
4、在Project Assistant页面中的下方选择“Application Information”,输入一些软件的基本信息;选择“Installation Requirements”设置一些安装的环境需求,这里没设置;选择“Installation Architecture”设置一下文件的结构,这里我们新建了三个文件夹,分别是Server、Client、Doc,分别存放服务器、客户端和文档内容。这里设置的对应Installation Designer下的Organization下面的features,把Features下面的三个子项更改为Server、Client和Doc;回到“Project Assistant”页面,选择“Application Files”,可以设置每个文件夹下面所包含的内容,这里我们不采用这种静态的方式,因为如果这里设置了,不管你选择只安装服务端或者客户端等,都会把所有文件都拷贝到安装目录下,所以我们采用脚本的方式动态加载需要的文件;当然采用Project Assistant也可以设置注册表等操作,但是后面的操作,我们基本上都采用脚本控制
5、选择Installation Designer页面左边树状栏里选择Behavior And Logic下面的InstallScript,新建一个Script File,系统自动命名为Setup.Rul,这个名字不要更改。在代码编辑区的上面我们可以看到有一个函数生成帮助,可以自动为项目生成一些安装脚本。可以自己试试。下面我把整段代码贴上来,然后对重要的地方进行解释