【问题标题】:How can I install a third party MSI using a custom action?如何使用自定义操作安装第三方 MSI?
【发布时间】:2009-07-25 05:18:48
【问题描述】:

我有一个 Visual FoxPro 安装程序 (exe),我想使用 WiX 自定义操作启动它。但是,我认为 VFP 安装程序是 MSI 的包装程序,因为我收到“错误 1500”,这似乎表示我正在尝试同时运行两个安装程序。

如何从我自己的 MSI 引导这个第三方 MSI?

我目前正在 InstallExecuteSequence 中启动 VFP 安装程序。我尝试在 InstallUiSequence 中运行它,但我从 ShellExec 调用我自己的安装程序,所以它不会运行 InstallUiSequence。

任何指针将不胜感激。

【问题讨论】:

    标签: wix windows-installer


    【解决方案1】:

    当前版本的 MSI 在技术上是不可行的。推荐通过引导程序安装额外的 MSI。

    请在此处查看我对相关问题的回答:Wix and .NET Framework (prerequisites)

    【讨论】:

    • 这在技术上是不可行的,因为在 MSI 中完成的实际文件安装和系统更改是作为数据库样式的事务执行的,如果失败应该可以回滚。如果同时安装两个 MSI 文件,则无法使用此功能。
    【解决方案2】:

    你真的不能,如果你试图“解决”它,那将是一个坏主意。如果您确实需要这种功能,请使用NISI 之类的方式调用第 3 方 MSI,然后再调用您的。

    【讨论】:

      【解决方案3】:

      我已经使用 Orca 打开了一个 MSI,并将其保存为 MSM(合并模块),并在之前将其添加到 Visual Studio 安装项目(遗憾的是不是 WiX)中,并且它工作正常。

      我很确定 Orca 带有 Visual Studio,但 Google 应该会给你很好的下载结果。

      尝试将 MSM 添加到您的 WiX 项目,然后告诉我们会发生什么。

      【讨论】:

      • 我不推荐这种方法。转换为 MSM 后,某些信息必然会丢失,这可能会导致以后的更新或更改出现问题。
      猜你喜欢
      • 2019-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-22
      相关资源
      最近更新 更多