MsiPatchSequence Table
La table MsiPatchSequence contient toutes les informations requises par le programme d’installation pour déterminer la séquence d’application d’une petite mise à jour correctif par rapport à tous les autres correctifs. La table doit se trouver dans la base de données du fichier patch et non dans une transformation dans le correctif. Le programme d’installation ignore ce tableau lors de l’application d’un correctif mise à niveau majeure. Lors de l’application d’une mise à niveau mineure correctif, le programme d’installation utilise uniquement cette table pour identifier les correctifs remplacés qui ne doivent pas être séquencés.
La table msiPatchSequence contient les colonnes suivantes.
Colonne | Type | Clé | Nullable |
---|---|---|---|
PatchFamily | identificateur | Y | N |
ProductCode | GUID | Y | Y |
Séquence | version | N | N |
Attributs | entier | N | Y |
Colonnes
-
PatchFamily
-
Spécifie que le correctif est membre de la famille de correctifs nommée dans ce champ. Les correctifs dans la même famille de correctifs qui ciblent la même version du produit sont triés par les valeurs de la colonne Séquence. Les correctifs de la famille de correctifs sont appliqués au produit cible dans l’ordre d’augmentation de la séquence. PatchFamily est également utilisé pour déterminer quels correctifs doivent être remplacés. Un correctif peut être répertorié dans plusieurs lignes et appartenir à plusieurs familles de correctifs s’il s’applique à plusieurs produits ou inclut plusieurs correctifs.
Windows Installer n’interprète pas la valeur PatchFamily d’une manière autre que les comparaisons pour l’égalité par rapport à d’autres valeurs PatchFamily. Une valeur PatchFamily doit être unique dans ProductCode ciblé par l’ensemble de correctifs. Dans les scénarios de mise à jour corrective complexes, l’identificateur PatchFamily peut avoir besoin d’être globalement unique.
-
ProductCode
-
Une valeur dans ce champ est facultative. Si un code de produit GUID est entré dans ce champ et que le correctif est appliqué au produit spécifié, le correctif est trié et appliqué en tant que membre du PatchFamily spécifié. Si un GUID de code de produit est entré dans ce champ et que le correctif n’est pas appliqué au produit spécifié par ProductCode, cette ligne est ignorée. Si la valeur dans ProductCode est NULL, le correctif est trié et appliqué en tant que membre de PatchFamily pour toutes les cibles du correctif, quel que soit le code du produit.
Un correctif peut avoir plusieurs lignes dans le même PatchFamily et un ProductCode différent pour chaque produit ciblé par le correctif. Une ligne pour PatchFamily peut spécifier NULL pour ProductCode. Si le produit cible correspond à une ligne avec un ProductCode non NULL, le programme d’installation utilise la ligne correspondante et ignore la ligne avec null ProductCode. Si aucun des codes de produit spécifiés ne correspond à la cible, le correctif est trié et appliqué en tant que membre de PatchFamily pour toutes les cibles du correctif, quel que soit le code du produit.
-
séquence de
-
La valeur de la colonne Sequence spécifie la séquence de ce correctif dans le PatchFamily spécifié. La valeur dans Sequence est exprimée au format de données Version. La valeur contient entre 1 et 4 champs et chaque champ a une plage de 0 à 65535. Les membres de PatchFamily sont triés et appliqués au produit cible dans l’ordre d’augmentation des valeurs sequence. Par exemple, les six valeurs suivantes augmentent : 1, 1.1, 1.2, 2.01, 2.01.1, 2.01.1.
-
attributs
-
La présence de l’attribut msidbPatchSequenceSupersedeEarlier dans une ligne indique que la petite mise à jour correctif remplace les mises à jour fournies par tous les correctifs avec des valeurs de séquence inférieures dans le même PatchFamily. Ce correctif contient tous les correctifs fournis par les correctifs antérieurs dans le PatchFamily spécifié. Cet attribut ne signifie pas que ce correctif remplace les correctifs antérieurs dans tous les cas, car les correctifs antérieurs peuvent appartenir à plusieurs familles de correctifs.
Un correctif petite mise à jour ne peut pas remplacer un de mise à niveau mineure ou correctif principal de mise à niveau dans n’importe quelle circonstance, même si le msidbPatchSequenceSupersedeEarlier est défini.
Nom Valeur Signification 0x00 Indique une valeur de séquencement simple. msidbPatchSequenceSupersedeEarlier 0x01 Indique un correctif qui remplace les correctifs antérieurs dans cette famille.
Validation
Rubriques connexes