一. 下载 InstallShield 2015(支持VS2012)
VS2012没有自带打包工具,所以要先下载并安装一个打包工具。我采用微软提供的打包工具: InstallShield2015LimitedEdition。下载地址:http://learn.flexerasoftware.com/content/IS-EVAL-InstallShield-Collaboration。
填写个人信息后,就可以下载软件,并获得试用版的注册序列号,在邮箱中获得激活码。
下载后进行安装和激活,然后,就可以按照网上的众多的教程进行软件的打包与发布了。
激活
新建一个安装部署任务时,首次使用会出现如下所示的激活界面。
填写下载时出现的激活码即可。
二、 软件的打包与发布
注意:要先注册才能下载,注册的时候一定要填写自己本人的准确的邮箱号码,注册成功后会发送一封邮件,内含注册码。把打包工具安装好后,先使用注册码激活后再进行打包.
1.新建安装部署项目
在要打包的项目的“解决方案资源管理器”中,右击“解决方案XXXXXX” >添加>新建项目 (注意要选择realease发布)。
创建成功后的资源管理器的结构图如下图(要发布的项目未显示)。
2.设置程序基本信息
Application Information主要设置程序在安装时显示的有关程序的一些信息,包括:程序开发公司、程序名、程序版本号和公司官网等。
General Information 还可以设置更加详细的信息(如上图右所示)。
操作系统和其他依赖的软件框架。根据自己需求选择即可。
4.添加应用文件
Application Files一项用于设置应用程序锁包含的文件。程序引用的DLL,其他文件,如:exe文件,chm文件等都在这一步添加。
首先设置程序的主输出(主输出就是程序主体,包括程序的启动和入口):
操作步骤:2.选中程序名 > 3.点击“Add Project Outputs” > 4. 勾选主输出(图中左边红框),点击“OK”
点击Ok后,选中主输出,右键Resolve Project OutPut,如下图:
点击OK后,在左边菜单CatcheScreen下新建目录source,然后同上步骤添加源文件,然后选中资源,右键Resolve Project OutPut,如上右图。
PS:通过“Add Files”添加程序引用的DLL及其他文件、文件夹。
5.设置程序快捷图标
操作步骤:
1.点击左边的“Create an uninstallation shortcut”,为程序创建卸载项目;
2.点击“New...”,在弹出的菜单中选择上一步生成的“*.主输出”文件,默认名字是“Built”,通过“rename”按钮可以改变名字,本名字将显示在安装程序的图标下面(如桌面上的QQ图标);也可以设置程序Shortcut,即选择程序安装后在桌面或开始菜单中显示的图标;
3.设置程序图标和卸载选项图标的显示位置,选项如下图4方框。
6.设置程序的注册表信息
也可以不设置,跳过此步骤。
7.设置安装视图
根据自身需求进行设置即可。
8.发布程序
上面的安装步骤执行完成后即可生成解决方案,但是生成的文件会放在DVD-5文件夹内,想要使用安装文件的话就必须拷贝整个文件夹否则安装会出错,这样内容很繁琐,而且给客户的安装体验度也很差。
解决方法:使用SingleImage的安装包,将所有文件集成到一个Setup.exe中,再次安装的时候只需要一个Setup.exe即可。
步骤:右击“解决方案” 》 属性,再按下图进行设置。
PS: 注意在上图中选择Release版本的进行打包发布!
9.将安装环境一并打包
操作步骤如下图:
经过上述步骤,程序打包完成,打包后的.exe文件。
在打包过程中,可能会遇到各种报错,根据错误编号搜索,一个个解决完,那么打包后的程序一定可以安装执行。
三、软件的版本控制与覆盖安装[2]
这一部分主要是讲解,如果在目标端已经安装了一个版本或,后期再安装一个软件,该如何处理旧版本的问题。
1. 在General Information里,修改Product Version为新的版本号,此版本号应大于旧的版本号。点击Product Code右面的{...},获取一个新的Product Code。不要更换Upgrade Code!
2.“解决方案资源管理器”中选择“1.Organize Your Setup”,然后选择"Upgrade Paths",在左边的“Upgrade Paths”中点击右键,选择”New Upgrade Path“。
3. 这时会弹出打开对话框,文件类型选择exe文件,打开旧版本的安装包。
4.此时左侧或出现”NewUpgradeEntry1“,即升级入口,右侧显示该安装包的Upgrade Code和版本号。注意,需要时应修改Min Version和Max Version(即覆盖安装的旧版本范围)。如果不小心存在不同Upgrade Code的旧版本,再次添加相应安装包。
5.至此,制作的新的安装包,即会覆盖升级安装。
参考文章
1.caiandyong, VS2012(InstallShield2015LimitedEdition)打包程序详解 。
2.车臣, InstallShield 2015 LimitedEdition VS2012 覆盖安装.