1

Nous voulons utiliser le schéma de version major.minor.update.build_number populaire. Notre prochaine mise à jour de produit sera la version 1.0.1. Notre mécanisme interne de gestion de configuration produit des versions Release et des versions Daily, qui sont automatiquement emballées en tant que MSI. Les développeurs et QA télécharger régulièrement construit et bancs d'essai de mise à jour avec eux pour vérifier des corrections de bugs, etc.Microsoft Installer: peut-il mettre à niveau un produit sans modification du numéro de version?

Chaque build CM incrémente le champ build_number, donc construire des versions pourrait ressembler à ceci

1.0.1.001 // Release build 
1.0.1.002 // Daily build 
1.0.1.003 // Another Daily build 
1.0.1.004 // New Release build 

Notre problème est que, parce que notre ProductVersion ne change pas, la technologie d'installation de Microsoft ne nous permettra pas d'exécuter ces MSI comme mises à jour sur nos bancs d'essai. Nous devons désinstaller complètement le produit existant et réinstaller le MSI désiré.

Existe-t-il un moyen d'écrire nos MSI pour appliquer des mises à jour indépendamment du cachet ProductVersion?

Nous utilisons InstallShield. Existe-t-il une technologie d'installation alternative qui nous permettrait de faire ce que nous voulons?

Merci!

Répondre

1

Vous devriez être en mesure d'effectuer une mise à niveau mineure dans cette situation. Si votre objectif consiste à effectuer des mises à niveau majeures, vous devez modifier l'un des trois premiers champs de la propriété ProductVersion.

Si votre objectif est de nager en amont, vous devez insérer une action personnalisée entre FindRelatedProducts et RemoveExistingProducts pour remplacer la logique de détection de produit intégrée de MSI. Fondamentalement, vous voudrez utiliser l'API Msi pour trouver les ProductCodes installés pour votre UpgradeCode.

Personnellement, je vous conseille d'

Major.Minor.Build.Patch donc ma séquence de construction est incrémentée

1.0.1.0 1.0.2.0 1.0.3.0 1.0.4.0 1.1.5.0 1,1. 6.0 1.1.7.0

Le .0 me permet de reconstruire des assemblages et de les expédier en tant que patchs si nécessaire.

+0

Merci Christopher. Notre objectif est de pouvoir effectuer une installation complète du produit, ou une mise à niveau, à partir d'un fichier MSI généré automatiquement, sans jamais modifier une partie de sa triade Major.Minor.Build. Il semble que ce n'est pas possible sans changer le script d'installation entre chaque reconstruction. Nous pourrions avoir à adopter votre schéma ProductVersion de Microsoft et de Microsoft. – dripfeed

Questions connexes