如何在自定义操作序列中安装主应用程序之前对 Silent Installer .exe 文件进行排序?

How to Sequence the Silent Installer .exe file before installation of main application in Custom Action Sequence?

我试图在安装主要 windows 安装程序文件之前安装自定义 exe 文件。

我正在使用 Install Sheild 限量版。配置完所有内容后,我在自定义操作的 "After Register Product stage" 处对我的静默安装程序文件进行了排序,它给了我错误 1618(这是另一个安装正在进行中。)我知道主安装程序正在进行中,所以它不允许静默安装程序 .msi 进行安装,但不知道如何解决此错误。

但问题是我选择 源位置 作为 "File Exist on Target Computer" 和 文件位置 作为 "INSTALLDIR"。

执行此操作时,我收到错误 1618。

谁能帮我解决这个问题?

SilentInstaller.exe文件中的代码如下:

Process processObj = Process.Start("msiexec.exe", @"/i "folderpath\SqlLocalDB.msi" /qn IACCEPTSQLLOCALDBLICENSETERMS=YES");
                            //Loop until the process has exited
                            do
                            {
                                //refresh the process
                                processObj.Refresh();
                            } while (!processObj.WaitForExit(1000));

我已经验证了路径和所有内容,但只在序列中被击中。

任何帮助将不胜感激。谢谢

Windows 安装程序强制执行互斥锁以阻止您尝试执行的操作。由于您使用的是 InstallShield Limited Edition,从技术上讲,您只能使用他们提供的 PRQ。但是,如果您将 InstallShield Pro/Prem 放在 VM 上,您可以使用它来生成 PRQ 文件,然后将其引入您的 Limited Edition 项目中。这将导致 setup.exe 到 运行 之前的 MSI 运行 是你的 MSI,从而避免了互斥锁。

http://blog.iswix.com/2006/11/using-installshield-12-to-install-net.html