2017-03-10 5 views
0

Je souhaite exécuter une action personnalisée Wix uniquement sur la mise à niveau et les correctifs, et non sur l'installation/la réinstallation ou la réparation. Donc, fondamentalement, uniquement si le numéro de version de l'application augmente, cette action personnalisée doit être exécutée. J'ai essayé la règle suivante et il a désactivé l'action personnalisée complètement sur la correction:Wix - Exécuter une action personnalisée uniquement Lors de la mise à niveau et de la correction Pas de réparation/réinstallation

<Custom Action="upgrade_action" Before="InstallFinalize">Installed AND NOT REMOVE AND UPGRADINGPRODUCTCODE</Custom> 

Que puis-je faire pour cela?

Répondre

2

S'il s'agit du nouveau produit majeur de mise à niveau et que vous utilisez l'élément WiX MajorUpgrade, la propriété WIX_UPGRADE_DETECTED est définie s'il effectue une mise à niveau et détecte une ancienne version. UPGRADINGPRODUCTCODE est défini dans l'ancien produit en cours de mise à niveau, celui qui est déjà installé.

Il semble que tout ce dont vous avez besoin est WIX_UPGRADE_DETECTED ou PATCH si vous voulez que l'AC fonctionne uniquement dans ces conditions.