Séquencement des correctifs

À compter du programme d’installation Windows 3.0, les auteurs peuvent ajouter des informations de séquencement de correctifs à la base de données du package correctif dans la table MsiPatchSequence. Le programme d’installation peut utiliser ces informations pour déterminer les retouches applicables à un package d’installation, pour déterminer la meilleure séquence de mises à jour correctives et pour installer les retouches dans un ordre constant, indépendamment de l’ordre dans lequel ils sont fournis au système.

Programme d’installation Windows 2.0 : non pris en charge. Les versions du programme d’installation Windows antérieures au programme d’installation Windows 3.0 installent des retouches dans l’ordre dans lequel ils sont fournis au système, qu’ils contiennent ou non une table MsiPatchSequence.

Les éléments suivants sont requis pour utiliser la fonctionnalité de séquencement de correctifs.

  • Les packages correctifs (fichiers .msp) doivent avoir une table MsiPatchSequence contenant des informations de séquencement. Le programme d’installation installe les retouches qui n’ont pas de table MsiPatchSequence dans l’ordre dans lequel elles sont fournies au système.
  • Les retouches sont installées à l’aide du programme d’installation Windows 3.0 ou version ultérieure.

Le programme d’installation Windows version 3.0 présente les fonctions suivantes pouvant être utilisées par les applications pour déterminer la meilleure séquence de mises à jour correctives.

  • La fonction MsiDeterminePatchSequence prend une liste de retouches et détermine dans quelle séquence elles peuvent être appliquées à un produit installé. Cette fonction prend en compte toutes les retouches ou produits qui ont déjà été installés sur le système.
  • La fonction MsiDetermineApplicablePatches prend une liste de retouches et détermine dans quelle séquence elles peuvent être appliquées à un produit installé. Cette fonction ne prend pas en compte toutes les retouches ou produits qui ont déjà été installés sur le système.

Le programme d’installation Windows version 3.0 peut appliquer plusieurs retouches à un produit dans une même installation de mises à jour correctives. Le groupe de retouches en contient certaines qui incluent des informations de séquence de mises à jour correctives (une table MsiPatchSequence ) et d’autres qui n’en incluent pas. Le programme d’installation Windows installe les packages correctifs sans ce tableau dans l’ordre dans lequel ils sont fournis au système. Le programme d’installation prend en compte les packages correctifs qui ne disposent pas d’une table MsiPatchSequence, mais qui ont été marqués comme des retouches obsolètes ou remplacés par la méthode décrite dans la section suivante.

Lorsque le programme d’installation Windows version 3.0 installe plusieurs retouches, il effectue les étapes suivantes pour déterminer la séquence dans laquelle des retouches individuelles sont appliquées au produit :

  1. Les retouches installées sans table MsiPatchSequence sont placées dans l’ordre dans lequel elles ont été appliquées au produit. La première retouche appliquée est placée en premier dans la séquence.

  2. Les nouvelles retouches sans table MsiPatchSequence sont placées dans la séquence. Ces retouches sont appliquées par l’installation de mises à jour correctives actuelles. Elles sont placées dans l’ordre dans lequel elles sont fournies au système et après toutes les retouches de l’étape 1.

  3. Les retouches obsolètes sont éliminées de la séquence de correctifs.

    Notes

    Un package de retouches peut spécifier dans la propriété Résumé du numéro de révision une liste explicite des retouches obsolètes à supprimer par la retouche. Cette liste est destinée aux versions du programme d’installation Windows antérieures à la version 3.0. Le programme d’installation Windows version 3.0 supprime les retouches de la séquence marquées comme obsolètes, uniquement si elles n’ont pas la table MsiPatchSequence.

     

  4. Le programme d’installation suit la séquence de mises à jour correctives et détermine les retouches applicables dans la séquence donnée. Lorsque plusieurs retouches sont appliquées à un produit, chaque retouche de la séquence transforme également la base de données d’installation du produit (fichier .msi). Une retouche est applicable dans une séquence particulière uniquement si sa transformation de base de données est capable de prendre le code de produit, la version, la langue et le code de mise à niveau résultant de l’application des transformations de tous les packages correctifs précédents à la base de données de produit. Le programme d’installation élimine les retouches inapplicables de la séquence.

  5. Le programme d’installation commence à placer les retouches qui ont des informations de séquencement dans sa table MsiPatchSequence. Les retouches de mises à niveau mineures qui ont la table MsiPatchSequence sont placées dans la séquence après les retouches qui ont été séquencées dans les étapes précédentes et dans l’ordre de leur version de produit de la plus faible à la plus élevée après la mise à niveau. Le programme d’installation Windows élimine ensuite les correctifs de mises à niveau mineures inapplicables dans cette séquence.

  6. Les petits correctifs de mises à jour ciblant les mises à niveau mineures ayant une table MsiPatchSequence sont attribués à la version la plus élevée du correctif de mises à niveau mineures dans la séquence.

  7. Tous les petits correctifs de mises à jour qui ne sont pas attribués après les étapes précédentes et qui ont la table MsiPatchSequence sont placés dans l’ordre avant la première mise à niveau mineure contenant la table MsiPatchSequence et après la base de données d’installation.msi et toutes les retouches sans la table MsiPatchSequence. Le programme d’installation Windows élimine ensuite les petits correctifs de mises à jour inapplicables dans cette séquence.

  8. Le programme d’installation Windows version 3.0 élimine les retouches remplacées de la séquence. Lorsqu’une retouche remplace celles qui se produisent plus tôt dans la séquence de correctifs, elle contient tous les correctifs des retouches antérieurs. Les retouches antérieures ne sont plus nécessaires. Le programme d’installation Windows nécessite les informations de la table MsiPatchSequence pour éliminer les retouches remplacées.

    Notes

    Les retouches destinées à remplacer un ensemble antérieur de retouches doivent être créées pour remplacer les retouches antérieures dans toutes les familles de retouches. Les petits correctifs de mises à jour peuvent uniquement remplacer les petites mises à jour. Les mises à niveau mineures peuvent remplacer les petites mises à jour et d’autres mises à niveau mineures.

     

  9. Les petits correctifs de mises à jour qui contiennent des tables MsiPatchSequence, sont séquencés dans les versions de produit en fonction des informations de séquencement dans leurs tables MsiPatchSequence. Cela détermine la séquence finale de mises à jour correctives.

Une retouche qui ne doit pas être utilisée peut être éliminée de la séquence de mises à jour correctives. Pour plus d’informations sur l’élimination des retouches de la séquence de mises à jour correctives, consultez Élimination des retouches.

Pour obtenir un exemple de la façon dont la table MsiPatchSequence peut être utilisée pour appliquer des retouches dans l’ordre dans lequel elles sont créées, consultez l’exemple de mises à jour correctives multiples.