【问题标题】:Is it possible to run a custom action only in repair mode是否可以仅在修复模式下运行自定义操作
【发布时间】:2013-10-23 05:45:41
【问题描述】:

我只需要在修复期间运行自定义操作。但我没有找到这样做的有效条件。 如果我指定具有以下条件的自定义操作,它将在修改模式和修复模式下运行。

Installed AND Not REMOVE

我正在使用 InstallShield 2012 spring。

【问题讨论】:

    标签: installation windows-installer installshield installshield-2012


    【解决方案1】:

    检查REINSTALL 属性。自定义操作的条件语句应类似于 REINSTALL""

    【讨论】:

      【解决方案2】:

      REINSTALL="" 将在安装和卸载阶段评估为 True,因此确切的条件是 (Installed and NOT REMOVE) AND (REINSTALL="") 因为 (Installed and NOT REMOVE) 在修改和修复操作期间为 True,但在修复期间 REINSTALL 属性将设置为空白

      【讨论】:

        【解决方案3】:

        供将来参考查看这些备忘单:

        我没有时间检查所有这些条件并对其进行测试,但后一张表从表面上看是合理的。然而:

        我相信 REMOVE 有时可以在安装过程中设置(和更改) - 由于 MSI 的命令行界面和属性配置非常灵活,因此处理所有可能性排列非常复杂。

        Installshield 备忘单我从未主动使用或检查过。请查看他们的修复建议 - 根据修复的调用方式,会有不同的建议。

        请记住还检查自我修复 - 只需删除主应用程序 EXE 并通过调用应用程序的广告快捷方式(如果有)来触发自我修复。我检查已经有好几年了,但自我修复可能只在 InstallInitialize 和 InstallFinalize 之间运行。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-04-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-04-26
          • 2012-05-04
          • 1970-01-01
          相关资源
          最近更新 更多