高级安装程序Setup.exe - 命令行切换到卸载程序包

时间:2011-12-08 09:31:43

标签: command-line advanced-installer

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

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

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

"c:\MySetup.exe" /exelog "c:\log.txt" /passive /log "c:\msilog.txt"

AdvancedInstaller执行的结果命令最终是

msiexec.exe /i [path to extracted msi] /passive /log "c:\msilog.txt"

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

"c:\MySetup.exe" /exelog "c:\log.txt" /x /log "c:\msilog.txt"

结果

msiexec.exe /i [path to extracted msi] /x /passive /log "c:\msilog.txt"

当然会失败,因为/ x位于错误的位置(应该代替/ i)。 Advanced Installer exe需要哪些开关/参数?

2 个答案:

答案 0 :(得分:4)

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

以下内容将指示Advanced Installer EXE引导程序在卸载时触发MSI。

<强>更新:

"c:\MySetup.exe" /exelog "c:\log.txt" /x // /log "c:\msilog.txt"

答案 1 :(得分:1)

您可以使用//标记,例如:

"c:\MySetup.exe" /exelog "c:\log.txt" /x // /log "c:\msilog.txt"

此标记用于替换msiexec命令行。您可以在用户指南中阅读相关内容:http://www.advancedinstaller.com/user-guide/exe-setup-file.html