【C#】VS2012+InstallShield2013制作软件更新包
上篇文章介绍了如何使用installshield制作软件的安装包,见地址:http://blog.csdn.net/catshitone/article/details/41700115
这次来介绍一下,当软件有更新时,如何制作一个更新包,自动删除旧软件,安装新软件。
1.首先打开你的安装部署项目。
我的是Setup1.的General Information文件,如我左边圈住的有三个重要的项,如下图。
Product Version:你本次产品的版本号,每次发布新产品,这个的Version号,要增加一下。我上次的版本是1.02,所以这次我设置为1.03.
Product Code:这就是一个guid,相当于产品的唯一识别码,每一次发布新版本,这个就要改变一下,可点击该行右边的{...}按钮进行随机分配。
Upgrade Code:这个是产品的升级码,同一个产品共用一个升级码,这里要保持不变。就像所有的vs2010都用的同一个Upgrade Code,每此vs2010有update,它只是改的Product Code。
2.配置更新设定。
在右面列表选择Upgrade Paths文件,打开后,如下图1所示,在Upgrade Paths上右键,选择New Upgrade Path。然后选择你上一个版本的setup.exe文件,如下图2所示。
(图1)
(图2)
然后,就看到了图3的界面,左边的NewUpgradeEntry1,就是新建的那个。右边的Upgrade Code不要改变,它表示了你整个的软件系列。Min Version和Max Version控制了软件更新的版本区间,在此版本区间内的软件都会被卸载并更新。一般我Min Version都是选择1.00.0000,表示只要更新所有老版本。你可以把Min选择成1.01,Max选择1.03,则只有1.01-1.03的版本会被更新掉。
(图3)
3.生成新版本
在Setup1上右键重新生成新的setup.exe。安装时就会把旧版本覆盖掉了。
有几个不好理解的地方:
1.如果Product Version和Product Code相同,生成的setup.exe也没有被改动过,则安装两次改软件包的时候会出现什么情况呢?结果如下图:
2.如果其他情况都如我上面1所说,我任何代码和设置都没改动过,只不过又重新生成了一次setup.exe呢?即已经安装了上次生成的setup.exe,这次再安装新生成的setup.exe。结果如下,为什么会出现这种结果,还没弄清楚怎么回事。
3.如果Product Version一样,Product Code随机生成了一个,然后setup.exe也重新生成了,会出现什么结果呢?答案是:什么都不会出现,照样会被覆盖安装。这中结果是由上述的Max Version决定了,因为我测试的时候把Product Version和Max Version设置一样了,如果把Product Version设定为大于Max Version,那会有什么结果?就请读者去尝试一下吧!
By Jim。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
【C#】WPF的xaml中定义的Trigger为什么有时候会不管用,如Border的MouseOver之类的
原文: 【C#】WPF的xaml中定义的Trigger为什么有时候会不管用,如Border的MouseOver之类的 初学WPF,知道一些控件可以通过定义Style的Trigger改变要显示的样式,但是经常遇到一些明明Trigger已经触发了,但是里面Setter设置的样式,却没有效果的问题。其实主要原因,是样式重复定义导致的。 举个例子: <Border x:Name="borderQZone" BorderBrush="Cyan" BorderThickness="0" CornerRadius="2,2,2,2" Width="20" Height="20" Style="{DynamicResource BorderStyle1}" > <Border.Resources> <Style x:Key="BorderStyle1" TargetType="{x:Type Border}"> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <...
- 下一篇
查看安卓APK源码破解
原文: 查看安卓APK源码破解 工具准备: <1>.android4me的AXMLPrinter2工具 <2>dex2jar <3>jd-gui 工具下载:http://download.csdn.net/detail/catshitone/8491347 开始: 第一步: 首先用解压软件(如好压)等,把apk包解压出来。其中解压后的xml文件打开时乱码,改怎么查看呢? 第二步: 打开cmd.exe进入到解压后的文件夹中。输入: java -jar AXMLPrinter2.jar showtimes_list.xml > h.xml 其中,showtimes_list.xml是你要查看的乱码的xml文件,h.xml是转换后的非乱码的文件。名字可自定义。 第三步: 解压后拿到了一个classes.dex文件,我们需要将dex文件变为jar文件。这里用到了另一个工具dex2jar。用cmd进入到dex2jar的文件目录中,并把classes.dex文件拷贝过来。输入以下命令: dex2jar.bat classes.dex 运行完之后,在当前文件...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8编译安装MySQL8.0.19
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS7设置SWAP分区,小内存服务器的救世主