【发布时间】:2008-10-31 14:56:34
【问题描述】:
大量搜索使我找到了一些关于如何创建引导 msi 的描述,但这些解决方案都假定 msi 是本地的或标准的 Windows 组件。有没有办法让 msi 下载带有普通 MSI 或 Wix 代码的安装程序(这也是一个 msi),而不是让引导程序执行一些非本地程序来这样做?
【问题讨论】:
标签: installation wix windows-installer bootstrapping
大量搜索使我找到了一些关于如何创建引导 msi 的描述,但这些解决方案都假定 msi 是本地的或标准的 Windows 组件。有没有办法让 msi 下载带有普通 MSI 或 Wix 代码的安装程序(这也是一个 msi),而不是让引导程序执行一些非本地程序来这样做?
【问题讨论】:
标签: installation wix windows-installer bootstrapping
我对 msi 的经验是不可能同时运行 2 个。 (虽然可能是错误的)
我最终做的是使用 Inno Setup (http://www.jrsoftware.org) 和 ISTool (http://www.istool.org) 来制作安装程序 exe,它可以下载并安装各种 msi。使用 ISTool 很容易做到。
我知道它不像 Wix 那样时尚或性感,但它对我很有效。
【讨论】:
我将创建一个在 InstallUISequence 中运行的自定义操作。这将在必要时下载 MSI(到源文件夹),然后尝试将其作为嵌套安装启动。
【讨论】:
Windows 会阻止两个安装同时在 InstallExecuteSequence 中,因此,如果您正在寻找带有引导程序的静默安装解决方案,那么您就是 SOL。
但是您可以从 UI 序列开始另一个安装,这可能是一个不错的解决方案,只要您建议您的客户如果要通过以下方式部署某些其他依赖项必须首先安装组策略或其他一些“静默”方法。
如果有帮助,我很确定您也可以使用 URL 调用 MSIEXEC,例如。 msiexec.exe /i http://some.domain/blah.msi /passive
【讨论】:
我建议您编写一个本机应用程序并让它运行第一个 msi,然后运行 seccons msi。我写了一篇关于如何做到这一点的博客。这是link (http://blog.foldertrack.com/?p=45)
【讨论】: