2017-06-12 2 views
1

Je suis désolé, je dois dire que je suis un débutant à wix toolset et connaissances connexes wx ...Pouvons-nous utiliser le fichier msi/wxs de la version précédente pour générer un nouveau package msi?

Actuellement, nous développons une application de bureau Windows. Chaque fois que nous publions notre version du produit, nous donnons nos fichiers binaires à une équipe de construction, et l'équipe de construction nous aide à générer le paquet .msi de mise à niveau, ce qui prendra beaucoup de temps. J'ai un coup d'oeil sur le jeu d'outils wix, et trouver si nous n'avons pas de changement de processus d'installation pendant le processus d'installation msi, nous pourrions utiliser la commande dark.exe pour générer le fichier wxs de l'ancienne version msi pakcage, puis changer le nouveau GUID, le nom du produit et la version du produit, etc, nous pouvons ensuite changer le wxs à nouveau nouveau paquet de mise à jour msi avec bougie et commande de la lumière. Il n'y a pas besoin d'équipe de construction pour générer le paquet msi pour nous quelques cas faciles ....

Ai-je raison? Si oui, nous pourrions utiliser un moyen automatique de gérer certains travaux de mise à niveau de l'application pour certains cas de mise à niveau facile ....?

Répondre

2

Si vous avez dans votre balise Product du fichier wxs résultant, un * pour l'attribut id générera un nouveau guid sur chaque build du programme d'installation.

<Product Id="*" 
     Version="1.2" 
     UpgradeCode="$(var.UpgradeCode)"> 

    <MajorUpgrade AllowSameVersionUpgrades="yes" 
        DowngradeErrorMessage="!(loc.DowngradeErrorMessage)" /> 

</Product> 

Tant que vous gardez la UpgradeCode statique, il sera non installer automatiquement la version précédente et installer la nouvelle pour vous. Le AllowSameVersionUpgrades permet cela pour les modifications mineures de la version, mais si le programme d'installation est grand et prend beaucoup de temps à installer, vous devriez probablement regarder les correctifs.