程序基于InstallShield2013LimitedEdition的安装和部署
在VS2012之前,我们做安装包一般都是使用VS自带的安装包制作工具来创建安装包的,VS2012、VS2013以后,微软把这个去掉,集成使用了InstallShield进行安装包的制作了,虽然思路差不多,但是处理还是有很大的不同,本文主要基于VS2013的基础上,介绍使用InstallShield2013LimitedEdition的安装包制作。
1、安装使用InstallShield2013LimitedEdition
在使用VS2013创建安装包之前,我们需要安装一个InstallShield的版本,其中LimitedEdition是一个可以申请免费账号使用的版本,当然专业版InstallShield是收费,而且费用也不低的了。使用LimitedEdition,我们也可以创建一般的安装包,本文主要介绍基于LimitedEdition版本的安装包制作。
安装完毕LimitedEdition版本后,我们可以在VS的新建项目里面,有一个安装包的创建工程模板了。

创建一个基于InstallShield的安装包工程后,就出现了下面这些界面,包含了几个步骤的内容,有些特性因为是LimitedEdition版本的原因,不能全部使用,不过不影响我们创建大多数用途的安装包。

2、创建配置InstallShield安装包的信息
1)应用程序信息
创建InstallShield的安装包,就是按照这些1,2,3,4,5,6这些步骤进行配置就差不多了,首先需要配置好公司名称,软件名称、版本、网站地址、程序包图标等基本信息。

对于详细的程序信息,我们还可以通过General Information功能进行详细的设置处理,如设置安装包语言、软件名称、介绍等信息。

单击【General Information】功能,出现一个更加详细的安装参数设置界面,我们根据提示设置相关的内容即可。

2)设置安装包所需条件
我们做.NET安装包的时候,一般都希望客户准备好相关的环境,如果没有准备,那么我们可以提示用户需要先安装.NET框架的。这个步骤就是做这些安装前的预备工作的处理。
这里我的安装包是基于.NET 4.5程序的,因此选择对应版本的.NET框架就可以了,如果有其他类似SQLServer等的也可以设置。

3)添加安装包目录和文件
制作安装包一个费用重要的步骤就是添加所需的目录和文件,在Application Files里面可以添加对应的目录和文件,这个可以添加相应的依赖DLL,非常方便。
我们也可以在主文件里面查看他的依赖应用,可以去掉一些不需要的DLL的。

如果我们单击左边【Files and Folders】,我们就可以更加详细的操作整个安装包的文件和目录内容了。
如可以查看主程序文件的依赖文件操作。


4)创建安装程序功能入口
我们知道,以前利用VS创建的安装包,我们一般会在启动菜单创建对应的菜单结构、以及在桌面里面创建快捷方式等,这样才是标准的安装包生成内容,在Install Shield里面,软件这些更加方便,在【Application ShortCuts】里面,我们就可以创建这样的菜单和快捷方式了,如下所示。
A
我们也可以通过【Shortcuts】功能进入更加直观的界面显示,如下所示。

5)安装界面设置
Install Shield提供了很好的安装对话框界面设置,我们可以在这里设置所需要的安装包对话框,如许可协议、欢迎界面、安装确认等对话框,以及一些自定义的界面也可以。

打击【Dialogs】对话框,可以展示更详细的界面设置。

3、自定义对话框背景和文字
上面设置好的内容,生成安装包后,能够顺利进行安装了,不过默认的图片背景还是采用了 InstallShield的标准界面。有时候,我们希望能够自定义对话框的一些背景,以及安装界面的一些文字。这样我们的安装包界面和别人的就有区别,不在千遍一律了,看起来也更专业一些。
例如,默认我们生成的程序界面如下所示:

如果我们需要修改这里的背景和一些文字内容,我们可以在对应的路径下找到这些文件并修改即可。
下面是InstallShield相关的一些目录位置:
背景图片位置:C:\Program Files (x86)\InstallShield\2013LE\Support\Themes\InstallShield Blue Theme
字符串位置:C:\Program Files (x86)\InstallShield\2013LE\Languages

例如我把程序的背景界面设置为如下所示。

重新编译程序后,生成的安装包,启动界面就会发生了变化,符合我们的预期效果了,呵呵。

安装软件后,在启动菜单里面,就可以看到他的快捷菜单了,桌面也有对应的快捷方式了。

而对于对话框里面的提示文本,也可以通过上面地址(字符串位置:C:\Program Files (x86)\InstallShield\2013LE\Languages)的文件进行修改。

我们找到对应的2052的中文提示内容,进行修改即可。

这样我们根据上面的步骤,就能很好创建基于VS2013基础上的安装包了,并且对安装包的一些自定义设置进行了处理,使得我们生成的安装包更加美观、专业
程序基于InstallShield2013LimitedEdition的安装和部署的更多相关文章
- 微信小程序基于第三方websocket的服务器端部署
微信小程序后台请求越来越严格 1.request要求用https 2.websocket要求用wss 3.测试后发现websocket只能走433端口 作为.net开发,websocket又是使用的第 ...
- 小程序基于疼讯qcloud的nodejs开发服务器部署
腾讯,疼讯,很疼. 请慎重看腾讯给出的文档,最好做一个笔记. 我只能说我能力有限,在腾讯云小程序的文档中跳了n天. 最后还是觉得记录下来,以防止我的cpu过载给烧了. 此文档是对<小程序 ...
- Hadoop数据分析平台项目实战(基于CDH版本集群部署与安装)
1.Hadoop的主要应用场景: a.数据分析平台. b.推荐系统. c.业务系统的底层存储系统. d.业务监控系统. 2.开发环境:Linux集群(Centos64位)+Window开发模式(win ...
- 他山之石——vs2013 安装与部署及程序打包
C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio .下载地址: InstallShield 2013 Limited Edi ...
- Win10 IoT C#开发 2 - 创建基于XAML的UI程序 及 应用的三种部署方法
Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. 上一章我 ...
- Window程序的安装与部署
步骤: 1.新建项目—选择安装与部署—安装项目或使用安装向导,再这里我用的是安装向导 2.点击确定—下一步 3.点击下一步,选择主输出 4.点击下一步,添加文件 5.点击完成 设置: 右击安装项目 出 ...
- 基于centos6.5安装部署mongdb3.6
注意:不同的版本的centos,mongdb安装方式不同,请注意版本号!! 基于centos6.5安装部署mongdb3.6 方式有多种,本文介绍使用wget命令来下载获取mongdb,具体命令如下 ...
- 基于Ubuntu Server 16.04 LTS版本安装和部署Django之(五):测试项目
基于Ubuntu Server 16.04 LTS版本安装和部署Django之(一):安装Python3-pip和Django 基于Ubuntu Server 16.04 LTS版本安装和部署Djan ...
- 基于Ubuntu Server 16.04 LTS版本安装和部署Django之(四):安装MySQL数据库
基于Ubuntu Server 16.04 LTS版本安装和部署Django之(一):安装Python3-pip和Django 基于Ubuntu Server 16.04 LTS版本安装和部署Djan ...
随机推荐
- char.IsWhiteSpace(str,num),TimeSpan
IsWhiteSpace(String, Int32) 指示指定字符串中位于指定位置处的字符是否属于空格类别. TimeSpan TimeSpan ts=new TimeSpan(4,30,0); C ...
- java基础(19):List、Set
1. List接口 我们掌握了Collection接口的使用后,再来看看Collection接口中的子类,他们都具备那些特性呢? 接下来,我们一起学习Collection中的常用几个子类(List集合 ...
- swoole 内存泄露的问题有没有好的办法解决
在传统的web开发模式中,我们知道,每一次php请求,都要经过php文件从磁盘上读取.初始化.词法解析.语法解析.编译等过程,而且还要与nginx或者apache通信,如果再涉及数据库的交互,还要再 ...
- VUE基础实用技巧
Vue以前听说过,有了解过一点.当时还在热衷于原生JavaScript去写一些方法的封装,不是为啥,就感觉这样很帅,后面多多少少接触了一些JQuery的用法,到现在为止,JavaScript原生封装的 ...
- RPA之AA
RoboticProcessAutomation(即机器人流程自动化),RPA机器人能够模仿大多数人类用户的行为, 比如可以登录应用程序,移动文件和文件夹,复制和粘贴数据,填写表单,从文档中提取结构化 ...
- JS基础语法---数组基础知识总结
数组: 存储一组有序的数据 数组的作用: 一次性存储多个数据 数组的定义方式: 1.构造函数定义数组: var 数组名=new Array(); 2.字面量方式定义数组: var 数组名=[]; ...
- 【C#】学习笔记(1) Delegates,Events,Lambda Expressions
C#是跟着杨老师的教程走的,在这里感谢一下老师的无私奉献,他的cnblog地址:>cgzl,他的B站地址:>solenovex. 进入正题: Delegate表示委托,委托是一种数据结构, ...
- Android 安全攻防(二): SEAndroid bionic
转自:http://blog.csdn.net/yiyaaixuexi/article/details/8490886 最近研究SEAndroid,会陆续对各个模块做对比分析,学习移植SELinux至 ...
- Android框架Volley使用:Json请求实现
首先我们在项目中导入这个框架: implementation 'com.mcxiaoke.volley:library:1.0.19' 在AndroidManifest文件当中添加网络权限: < ...
- 微信小程序踩坑日记4——真机端解析json数组和开发平台不一样
0. 引言 环境:访问服务器端php,获取json数组,并渲染在前台 问题描述:保证在开发平台上的正常运行,但是在真机端却出现了无法正确解析wx.request()返回的数据(特指无法解析res.da ...