VS2012 打包部署程序
一. 下载 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 覆盖安装.
VS2012 打包部署程序的更多相关文章
- VS2012打包部署Winform程序
打包前的准备工作: 新建一个打包部署项目,点OK,如果是第一次使用的话,会打开一个网页,按照提示的步骤来做, 点击上面的step2的网址,进入到另一个网页: 填写完右边的信息,点击“download ...
- VS2012打包部署教程
前言 通常我们只是写一些系统,然后想要运行功能的时候就打开代码点击启动,这样只适用于开发人员或者局部开发人员这样做,软件开发的大多数意义上就是拿出开发的软件让用户放心的去点.用户无需知道代码,无需知道 ...
- Idea开发环境中搭建Maven并且使用Maven打包部署程序
1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...
- Qt打包部署程序自动查找依赖DLL工具windeployqt
qt编译好一个exe程序之后,部署到一台没有开发环境的机器上,需要一起拷贝其依赖的dll文件.这时需要一个windeployqt工具来帮忙,因为手动拷贝的话容易遗漏. https://blog.csd ...
- 【转】VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
- [转载]VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
- (转) VS2012程序打包部署详解
程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因微软没有将打包工具集成在开发环境中,但是我知道总会有解决办法的. 经过翻阅资料发现 ...
- VS2012及以上版本 程序打包部署详解
引用: http://blog.csdn.net/zhang_xinxiu/article/details/9099757 程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的 ...
- [C#打包部署教程]001.VS2012 + InstallShield
攻城狮编写测试完成后接下来我们要做的是打包部署程序. 经过翻阅资料发现,VS2012虽然没有集成打包工具,但它为我们提供了下载的端口,需要我们手动安装一个插件InstallShield.(旁白:网上有 ...
随机推荐
- iOS-APP-Icon 图标启动图及名字的设置
本文讲下appIcon图标.启动图及名字的设置 icon for iOS 图标大小参照苹果官网:https://developer.apple.com/library/ios/qa/qa1686/_i ...
- SASS常用方法
cnpm install --save-dev sass-loader //sass-loader依赖于node-sass cnpm install --save-dev node-sass //实现 ...
- Vue 实现分页+输入框关键字筛选
分页的实现(Vue+Element)+输入框关键字筛选 1.这里用的是Element 自带的分页组件 <template> <div class="sales-table& ...
- 韦东山ARM裸机笔记(2)--vi编辑器
VI编辑器(Visual Interface--可视化接口) 一.Linux下的一个文本编辑器,所具备的基本功能: 打开.新建.保存文件 光标移动 文本编辑 (多行间 | 多列间)复制.粘贴.删除 查 ...
- pidof---查找指定名称的进程的进程号id号。
pidof命令用于查找指定名称的进程的进程号id号. 语法 pidof(选项)(参数) 选项 -s:仅返回一个进程号: -c:仅显示具有相同“root”目录的进程: -x:显示由脚本开启的进程: -o ...
- Java生产者与消费者(上)
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 生产与消费者模式,是编程中最常用的模式之一,在多线程中应用比较明显.个人理解:在自助餐厅,厨师在不断 ...
- Font-Awesome最新版完整使用教程
何为Font-Awesome Font Awesome gives you scalable vector icons that can instantly be customized - size, ...
- 洛谷 P1709 [USACO5.5]隐藏口令Hidden Password
P1709 [USACO5.5]隐藏口令Hidden Password 题目描述 有时候程序员有很奇怪的方法来隐藏他们的口令.Binny会选择一个字符串S(由N个小写字母组成,5<=N<= ...
- Qt自定义类型使用QHash等算法(Qt已经自定义了34种类型,包括int, QString, QDate等基本数据类型)
自定义类型 #include <QCoreApplication> #include <QSet> #include <QDebug> class testCust ...
- RelativeLayout-代码中成员控件width height
今天需要在代码中动态的设置一个textview的width跟height属性,记录下来. textview在xml中的布局如下 <RelativeLayout android:layout_wi ...