zoukankan      html  css  js  c++  java
  • 修改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
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    工程模式--基于Java多态性实现
    使用IDEA导入打开Web项目
    基于字典树实现的O(n)排序
    牛客挑战赛39 E 牛牛与序列题解
    牛客练习赛61 F苹果树题解
    Treepath 题解
    Running Median 题解
    Xorto 题解
    NC201400 树学题解
    [Accumulation Degree]题解
  • 原文地址:https://www.cnblogs.com/qidong/p/11050601.html
Copyright © 2011-2022 走看看