【问题标题】:How to skip any CustomAction while Installation ?如何在安装时跳过任何 CustomAction?
【发布时间】:2016-04-27 12:09:13
【问题描述】:

我在 InstallShield 中做了一个安装程序。我已将此构建提供给客户。我有一个条件为“1”的 CustomAction,即始终执行。但现在我想在安装时跳过这个 CustomAction。我无法向客户提供新的安装程序。那么有什么方法可以在安装时跳过 CustomAction 吗?

我尝试将参数 /v"PrpertyName=Value" 传递给 Setup.exe。但这对我没有帮助,因为我的 CustomAction 条件为“1”。那么有没有其他方法可以通过命令参数或任何其他方式跳过 CustomAction?

【问题讨论】:

    标签: windows-installer installshield custom-action


    【解决方案1】:

    仅使用命令行参数是无法做到这一点的。您(或客户)将必须创建一个转换文件并通过命令行应用它。此转换可以删除或更改自定义操作的条件以使其不执行,或者可以对其进行更新以使其不会失败。

    可以使用 InstallShield 或大多数其他 MSI 编辑工具创建转换,并且可能应该修改自定义操作的条件(为 0,或引用属性;我将在本文的其余部分假设为 0) .

    创建转换后,您可以通过将其放在 setup.exe 旁边并为引用转换的 TRANSFORMS property 传递一个值来使用它(或者在您正在执行的极少数情况下使用 /t 参数)广告安装):

    mysetup.exe /v"TRANSFORMS=SkipAction.mst"
    

    请注意,如果 .mst 未签名,即使 .msi 已正确签名,也会导致 UAC 不可信提示。

    【讨论】:

    • 谢谢迈克尔。关于InstallShield,我有一些疑问想请教您。我如何与您沟通?
    猜你喜欢
    • 1970-01-01
    • 2015-03-11
    • 1970-01-01
    • 1970-01-01
    • 2011-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多