2014-09-24 91 views
1

我正在靜默地在遠程計算機上安裝msi文件。但是無法找到停止正在進行的無提示安裝的方法,併爲用戶提供了一個選項,用於回滾已安裝的一半軟件包所做的更改。停止msi無提示安裝並回滾更改

我使用WMI類來靜默安裝msi軟件包。 任何人都可以在安裝過程中幫助我停止和回滾msi靜默安裝。

請做出寶貴的意見和反饋。

回答

1

Windows安裝程序設置不會中途失敗,並在系統上留下半安裝產品。它們是事務性的,如果它們失敗了,它們會回滾並撤消對系統所做的任何更改。如果您創建了MSI並且存在已更改系統的自定義操作,則創建回滾自定義操作以撤銷這些更改。如果它是一些其他MSI在系統發生故障時保留更改,那麼它的設計和創作就會很差。

+0

我想你沒有得到我的問題。我想故意停止無聲的msi安裝,我想清除的另一件事是我不創建msi安裝程序,我只是使用WMI類安裝它,並想要取消/停止正在進行的無提示安裝。 – 2014-09-25 05:13:39

+0

我的團隊評論的大部分內容都寫得不好。 – 2014-09-25 15:18:54

+0

無提示安裝實際上是一種無提示安裝,不能使其保持安靜,並且還爲用戶提供選擇。如果它是一個測試場景,那麼在命令行上傳遞一個屬性會導致延遲自定義操作失敗,從而觸發回滾。 – PhilDW 2014-09-25 17:00:43

1

我猜你正在嘗試做的是測試任何給定的MSI的回滾工作。 Windows Installer XML有一個很好的WixFailWhenDeferred Custom Action模式來執行此操作。可以使用變換將其編寫到其他MSI中。

請注意,很多MSI作者都不知道如何編寫高質量的MSI,所以如果許多安裝程序在測試回滾時表現不佳,請不要感到驚訝。