是否可以从32位MSI安装程序调用64位MSI安装程序?我们有32位产品安装程序,但有一些组件是64位(例如Windows Shell扩展处理程序),我们希望将它们与我们的应用程序一起安装。关于如何做到这一点的任何想法?通过MSM或自定义操作或MSI链接?我们正在使用InstallShield。
答案 0 :(得分:2)
有一个互斥锁(_MSIExecute Mutex)阻止两个安装程序同时运行。从技术上讲,UI序列可以使用自定义操作来生成第二个进程并以这种方式运行,但随后您将破坏执行静默安装的能力。
正确的方法是创建32位和64位MSI并使用bootstrapper / chainer(对于InstallShield,套件安装程序或设置/功能先决条件)来序列化其安装。另一种方法,虽然不受支持,但是创建一个32位MSI并使用一些不太完美的自定义操作来处理64位注册表项。如果64位部件很小,这可能是一个很好的解决方案。不是最好的,但它有效。