2008-10-31 36 views
2

大量的搜索使我找到了几个关于如何创建引导msi的描述,但是这些解决方案都假设msi是本地或标准的Windows组件。有没有办法让msi下载安装程序(这也是一个MSI)与正常的MSI或WIX代码,而不是让引导程序执行一些非本地程序来做到这一点?MSI Bootstrapping:外部URL

回答

1

我对MSI的经验一直无法同时运行2。 (可能是错误的)

我最终做的是改为使用Inno Setup(http://www.jrsoftware.org)和ISTool(http://www.istool.org)下载并安装各种msi的安装程序exe。使用ISTool很容易。

我知道它并不像Wix那样别致或性感,但它对我非常有效。

+0

是的,嵌套的MSI几乎不可能实现。 MS声明嵌套安装或可能,但很难配置,并可能导致自定义操作的行为不同。 – 2008-10-31 17:45:36

1

我会创建一个在InstallUISequence中运行的自定义操作。如有必要(这将在源文件夹中)下载MSI,然后尝试将其作为嵌套安装启动。

0

Windows可以防止两次安装同时在InstallExecuteSequence之内,所以如果您正在寻找一个使用引导程序的静默安装解决方案,那么您就是SOL。

但是你可以开始另外从UI序列,这可能是一个确定的解决方案,只要你告知您的客户,某些其他的依赖关系必须首先安装,如果他们打算通过组策略或一些部署安装其他“沉默”的方法。

如果有帮助,我敢肯定,你也可以通过URL调用MSIEXEC,例如。 msiexec.exe /i http://some.domain/blah.msi /passive

0

我建议你编写一个本地应用程序,让它运行第一个msi,然后运行seccons msi。我写了一篇关于如何做到这一点的博客。这是linkhttp://blog.foldertrack.com/?p=45