【问题标题】:How to run custom action based on condition?如何根据条件运行自定义操作?
【发布时间】:2015-02-09 16:43:25
【问题描述】:

我正在尝试根据 Windows 版本运行自定义操作(删除某个文件)。 我知道如何检查 Windows 版本:

<Condition Message="Windows version xxx required...">
    <![CDATA[Installed OR (VersionNT >= 600)]]>
</Condition>

但是,我不想显示消息,而是删除文件。我找不到有关如何使用这种条件来运行或不运行自定义操作的示例!

【问题讨论】:

    标签: wix windows-installer conditional conditional-statements custom-action


    【解决方案1】:

    您需要在 Custom element 中指定运行自定义操作的条件。 (这允许您在序列中的不同位置多次运行自定义操作,如果需要,每次都使用不同的条件)。

    例子:

    <InstallExecuteSequence>
      <Custom Action="CreateRegistryEntries" After="CostInitialize">
        NOT Installed AND NOT PATCH
      </Custom>
    </InstallExecuteSequence>
    

    【讨论】:

    • 谢谢!但是我怎样才能像这样检查 Windows 版本呢?自定义操作="CreateRegistryEntries" After="CostInitialize"> = 600]]> ?
    • 我认为你可以在没有 CDATA 标签的情况下做到这一点
    猜你喜欢
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-05
    • 2011-11-23
    • 2014-11-05
    • 1970-01-01
    相关资源
    最近更新 更多