3
我正在使用WiX創建可升級的安裝程序,在安裝新版本之前需要完全刪除現有程序。我有文件升級,並補充說,新版本應該是,但我剩下2個程序在添加/刪除程序屏幕的實例。以下是我如何刪除所有內容的示例。使用WiX升級後的2個程序實例
<Product Id="064e9bca-dcf5-412d-9a8f-dafec3bd3406" Name="testInstall" Language="1033" Version="1.0.14" Manufacturer="testInstall" UpgradeCode="5dd5747f-c598-4133-8c7d-252ae3dee8a5">
<Package InstallerVersion="301" InstallPrivileges="elevated" InstallScope="perMachine" Compressed="yes" />
<Upgrade Id="5dd5747f-c598-4133-8c7d-252ae3dee8a5">
<UpgradeVersion Minimum="1.0.0"
IncludeMinimum="yes"
Maximum="1.0.13"
OnlyDetect="no"
Property="OLDERVERSIONBEINGUPGRADED" />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts After="InstallInitialize"/>
</InstallExecuteSequence>
任何可以提供的幫助將不勝感激。
非常感謝你確認了我的理論。但我發現的其中一件事是,其中一個文件在應該被刪除時並未從舊版本中刪除。你知道任何一個文件在所有其他文件被刪除時會被掛起的原因嗎?我發現這是因爲它仍然附加到舊版本的原因,所以版本仍然在技術上安裝。 – 2009-11-12 16:49:24
Windows安裝程序爲每個由多個MSI安裝的文件保留一個計數器。只有在計數回到0時纔會刪除該文件,也就是說,兩個MSI都被卸載。 – Nestor 2009-11-12 17:00:15