簡體   English   中英

Wix自定義BA:如何忽略MSI安裝條件? 或者如何運行強制卸載MSI

[英]Wix custom BA: How to ignore msi install conditions ? Or how to run force uninstall of msi

我正在編寫自定義BA。 捆綁包中包含的Msi軟件包具有錯誤配置的安裝條件。 (它會在安裝之前和卸載之前檢查注冊表項)。 問題是:如果找不到注冊表項,則無法卸載msi軟件包。 Msi的安裝條件無法更改。 安裝/卸載時,如何強制msi忽略自定義BA中的條件。

有什么方法可以使用msiexec運行強制卸載?

任何幫助將不勝感激! 謝謝!

這非常非常煩人,我本人也遇到過類似情況。 開發安裝程序的第一條規則是僅在可以回滾到已知狀態的虛擬機中對其進行測試,但是現在為時已晚。

有2種方法,首先嘗試一種簡單的方法。 找到緩存在%windir%\\installer\\卸載程序MSI。 它將被重命名,以便通過時間戳確定它是哪一個。 注意文件的名稱。 在沒有阻止卸載的要求的情況下構建新的安裝程序,並重寫您先前記下的文件名。 現在嘗試卸載它。 如果可行,那么您就完成了。

如果這不起作用,則需要對MSI進行一些修改,以使其完全卸載。 您將需要安裝Orca工具,該工具可讓您查看組成MSI的原始表。 這對於MSI開發非常有用,因此您可能仍要安裝它。 它將使您對MSI工具鏈有更好的了解。 它包含在Windows平台工具包中。 如果使用的是Visual Studio,則可以在類似於C:\\Program Files (x86)\\Windows Kits\\8.0\\bin\\x86某個位置找到安裝C:\\Program Files (x86)\\Windows Kits\\8.0\\bin\\x86

一旦安裝了Orca,就需要像方法1中一樣在%windir%\\installer\\找到您的安裝程序。在Orca中打開該MSI,然后在正確的表中找到有問題的操作並進行適當的修改。 您在這里只是自己一個人,但是如果您無法將其固定下來,請發表評論。 然后保存MSI,看看是否可行。

我可以使用它來卸載我學會使用VM之前創建的一些精美的安裝程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM