高级安装程序Setup.exe - 命令行开关卸载包

MoS*_*Slo 5 command-line advanced-installer

使用高级安装程序,我创建了一个生成 EXE 的包(有些部署功能无法包含在普通 MSI 文件中)。

现在,虽然高级安装程序允许我将命令行参数传递给底层 MSI,但我不知道要传递哪些参数来强制卸载软件包。

例如,以下参数记录设置事件并指示底层 MSI 被动运行并记录其自己的操作。

"c:\MySetup.exe" /exelog "c:\log.txt" /passive /log "c:\msilog.txt"
Run Code Online (Sandbox Code Playgroud)

AdvancedInstaller 执行的最终命令是

msiexec.exe /i [path to extracted msi] /passive /log "c:\msilog.txt"
Run Code Online (Sandbox Code Playgroud)

但尽我所能,我无法弄清楚如何让 AdvancedInstaller 使用 /uninstall 或 /x 开关启动 msiexec。例如:

"c:\MySetup.exe" /exelog "c:\log.txt" /x /log "c:\msilog.txt"
Run Code Online (Sandbox Code Playgroud)

结果是

msiexec.exe /i [path to extracted msi] /x /passive /log "c:\msilog.txt"
Run Code Online (Sandbox Code Playgroud)

这当然会失败,因为 /x 位于错误的位置(应该代替 /i)。高级安装程序 exe 需要哪些开关/参数?

MoS*_*Slo 5

好吧,它在文档中隐藏得有点模糊:所有“pre-path-to-msi”参数都遵循“[选项] // [可选参数]”模式

下面将指示高级安装程序 EXE 引导程序在卸载时触发 MSI。

更新:

"c:\MySetup.exe" /exelog "c:\log.txt" /x // /log "c:\msilog.txt"
Run Code Online (Sandbox Code Playgroud)