Deployment 如何避免在Inno安装程序下重新启动第三方安装程序?

Deployment 如何避免在Inno安装程序下重新启动第三方安装程序?,deployment,installation,inno-setup,device-driver,Deployment,Installation,Inno Setup,Device Driver,我正在使用,我需要安装第三方驱动程序。一切正常,除了这个第三方安装程序要求在我的安装脚本终止之前重新启动机器 示例:我需要安装两个驱动程序,第二个需要安装第一个,但第一个驱动程序需要重新启动机器 [Run] Filename: "FirstDriver.msi"; Flags: shellexec waituntilterminated; Filename: "SecondDriver.msi"; Flags: shellexec waituntilterminated; 我只想在安装完

我正在使用,我需要安装第三方驱动程序。一切正常,除了这个第三方安装程序要求在我的安装脚本终止之前重新启动机器

示例:我需要安装两个驱动程序,第二个需要安装第一个,但第一个驱动程序需要重新启动机器

[Run]

Filename: "FirstDriver.msi"; Flags: shellexec waituntilterminated; 
Filename: "SecondDriver.msi"; Flags: shellexec waituntilterminated; 

我只想在安装完成后重新启动。如何操作?

尝试使用
/norestart
命令行参数调用第三方安装程序:

[Run]

Filename: "FirstDriver.msi"; Parameters: /norestart; Flags: shellexec waituntilterminated; 
Filename: "SecondDriver.msi"; Parameters: /norestart; Flags: shellexec waituntilterminated;
编辑


有关更多详细信息,请参见问题。

对我有效的解决方案是:

Filename: "{sys}\msiexec.exe"; Parameters: "/package ""{app}\FirstDriver.msi"" /qn /norestart /passive"; Flags: shellexec waituntilterminated; Check: not Is64BitInstallMode; StatusMsg: "Installing my First Driver";

我需要指定msiexec.exe的目录才能工作,使用常量
{sys}
,从系统文件夹获取msiexec.exe。

除非第三方安装程序接受命令行参数以避免要求重新启动机器,否则恐怕您对此无能为力。哼。。。我在命令行中执行了此操作:
msiexec/package“FirstDriver.msi”/qf/norestart
,但在Inno安装程序中尝试时未成功。我在运行部分尝试了此操作:
文件名:“msiexec.exe”;参数:“/package”“{app}\FirstDriver.msi”“/qf/norestart”;标志:shellexec WaitUnterminated但似乎。@TLama由于MSI包的复杂性(特别是每个人创建的自定义操作),添加
/norestart
等常规方法不会每次都有效。使用
ShellExecute()
运行不可执行文件时,不能始终传递参数。当创建最终命令或使用DDE与现有进程对话时,可能无法转换该命令。