【问题标题】:Minor/Major upgrade on wix through cmd通过 cmd 在 wix 上进行次要/主要升级
【发布时间】:2012-12-21 07:51:34
【问题描述】:

我刚开始使用 WIX,我在 stackoverflow 中阅读了很多教程和问题,但升级部分仍然存在问题。

当我通过单击 .msi 文件安装新版本时,它会删除旧版本并安装新版本。

但是,当我尝试通过 cmd 做同样的事情时:

msiexec.exe /qn /l* logfile.txt /i MY_FILE.msi

效果不好。一些配置文件损坏,例如,在第一次安装时用户应该输入服务器名称,升级时他不需要这样做。在通过 cmd 升级时,服务器的名称被删除。 (这是问题之一)

升级路线

<Upgrade Id="GUID">
  <UpgradeVersion OnlyDetect="yes" Property="NEWER_VER_FOUND" IncludeMinimum="yes"
                        Minimum="$(var.ProductFileVersion)" />
  <UpgradeVersion Property="OLDER_VER_FOUND" IncludeMinimum="yes"
                        Minimum="1.0.0" IncludeMaximum="no" Maximum="$(var.ProductFileVersion)" />
</Upgrade>

有人知道如何解决这个问题吗?

另一个问题:如果我希望升级只与旧文件交换新文件而不是卸载/重新安装,我需要更改什么??

感谢

【问题讨论】:

    标签: wix windows-installer upgrade


    【解决方案1】:

    这并不是你所说的主要升级规则的问题。它更多地与属性不会跨事务持久化这一事实有关。结帐:

    Remember Property Pattern

    【讨论】:

    • 谢谢,我想弄清楚,如何从初始安装中获取值?我需要在属性的什么地方写这个值??
    • 您的初始安装需要将其存储在注册表之类的某个位置。然后您的后续安装会读入。如果您的初始安装已经部署,这可能是一个问题。您可能需要从某些应用设置文件或其他内容中获取它,具体取决于您的应用设计。
    • 好的,假设我找到了包含我需要的值的 var,我需要在哪里写呢?第 12 行的“关键”字段是什么?再次感谢。
    • 没有关于在哪里保存值的行业标准。第 12 行(键)由您决定。
    • 问题是当我使用完整的 ui 进行安装时,它识别出这是一次升级,我按下“升级”按钮继续。在静默安装中,(也没有 ui、基本 ui 和减少 ui)它忽略升级,它卸载旧版本并安装新版本。有很多东西需要从旧版本中保存下来。我只想让静默安装在完整的 ui 安装中进行相同的升级。你有什么主意吗???再次非常感谢您
    猜你喜欢
    • 2013-03-12
    • 1970-01-01
    • 2018-04-29
    • 1970-01-01
    • 2012-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多