在中间停止msi静默安装并回滚更改

时间:2014-09-24 09:40:52

标签: windows-installer wmi rollback

我正在静默地在远程计算机上安装msi文件。但是无法找到阻止正在进行的静默安装的方法,并且为用户提供了回滚半安装包所做的更改的选项。

我使用WMI类静默安装msi包。 任何人都可以帮助我在安装过程之间停止和回滚msi静默安装。

请提出宝贵的意见和反馈。

2 个答案:

答案 0 :(得分:1)

Windows Installer设置不会中途失败,并在系统上留下半安装的产品。它们是事务性的,如果它们失败,则它们会回滚并撤消对系统所做的任何更改。如果您创建了MSI并且存在已更改系统的自定义操作,则创建回滚自定义操作以撤消这些更改。如果它是其他一些MSI在系统失败时会在系统上发生变化,那么它的设计和编写都很糟糕。

答案 1 :(得分:1)

我猜测你要做的是测试任何给定MSI的回滚是否有效。 Windows Installer XML有一个很好的WixFailWhenDeferred Custom Action模式来执行此操作。可以使用转换将其创建到其他MSI中。

请注意,许多MSI作者都不知道如何编写高质量的MSI,因此如果许多安装程序在测试回滚时表现不佳,请不要感到惊讶。