从 Add/Remove 个程序调用 EXE 引导程序

Calling EXE bootstrapper from Add/Remove Programs

我有两个 MSI 安装包(使用 WiX), a.msi and b.msi which are bootstrapped into one EXe file using Inno Setup 完成,结果是 c.exe。在 Add/Remove 程序中只列出了 a.msi

问题是当用户从 Add/Remove 程序中删除 a.msi 时,我在 WiX 中有一个自定义操作被触发,调用 b.msi 进行卸载。现在 b.msi 将无法卸载,因为 a.msi 正在卸载并且 Windows 不会让两个卸载程序实例 运行 并行。

我想问的是,我可以设置 Add/Remove 程序来调用 c.exe 引导程序,这样我就可以同时删除 a.msib.msi 吗?

注意:b.msi来自外部来源,我无法更改它。

在 Inno Setup 中创建的安装程序会自动将其自身添加到 Add/Remove 个程序

如果那里没有它,则必须使用 Uninstallable=no 指令明确禁用它。只需启用它。


关于如何从 Inno Setup 卸载程序中卸载 .msi,请参阅:
Uninstall an MSI during during Inno Setup uninstall