• 修改visual studio setup 安装顺序(解决新版安装包无法自动移除老版本程序的问题)


    背景

    visual studio setup 支持自动删除之前版本的安装,需要设置RemovePreviousVersions = true, DetectNewerInstalledVersion = true.

    VS2005生成的新安装包会调用之前的版本安装包的卸载然后再安装

    e.g.

    1.0.1 开始安装

    1.0.0 Uninstall

    1.0.1 Install

    VS2008后更改了安装顺序,变为安装更新和覆盖后卸载老版本,且要检测dll的file version如果是更新的才会覆盖,如果不是会忽略(这有个坑,要注意的,如果修改代码了结果没改文件版本会导致安装后还是用的老版本的dll)

    新版的安装顺序变化会导致比如想自定义action,在安装之前做自定义操作(比如:停止service)会失败,因为安装完成后才会执行BeforeInstall.

    解决办法

    使用orca修改安装包顺序, 方法如下:

    1. 打开msi安装包,选择InstallExecuteSequence,查看InstallValidate和InstallInitialize的sequence,如下:1400和1500,

    2. 往下找到RemoveExistingProducts,修改sequence为InstallValidate和InstallInitialize之间的数字:1450

    3. 保存设置即可

     
    作者:qidong
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    ViewPager自动轮播、小圆点切换
    android自定义view属性
    单点触控
    自定义view、自定义圆形imageview
    为textview中的字符串着色
    xstream解析、httputils请求
    WebView加载页面
    HorizontalScrollView滑动 ViewPager切换
    Spring Boot 热部署(IDEA与Gradle)
    Linux下安装JDK
  • 原文地址:https://www.cnblogs.com/qidong/p/11050601.html
Copyright © 2020-2023  润新知