MsiPatchSequence テーブル
MsiPatchSequence テーブルには、インストーラーが、他のすべてのパッチに対する 小さな更新プログラム パッチの適用シーケンスを決定するために必要なすべての情報が含まれています。 テーブルはパッチ ファイルのデータベースに存在する必要があり、パッチ内の変換には含まれません。 メジャー アップグレード パッチを適用すると、インストーラーはこのテーブルを無視します。 マイナー アップグレード パッチを適用する場合、インストーラーはこのテーブルのみを使用して、シーケンスを実行してはならない置き換えられたパッチを識別します。
MsiPatchSequence テーブル には、次の列があります。
コラム | 種類 | 鍵 | 許容 |
---|---|---|---|
PatchFamily | 識別子の | Y | N |
ProductCode | GUID | Y | Y |
順序 | バージョン | N | N |
属性 | 整数 の | N | Y |
列
-
PatchFamily
-
パッチがこのフィールドで指定されたパッチ ファミリのメンバーであることを指定します。 同じ製品バージョンを対象とする同じパッチ ファミリ内のパッチは、[シーケンス] 列の値で並べ替えられます。 パッチ ファミリ内のパッチは、増加する順序でターゲット製品に適用されます。 PatchFamily は、置き換えるパッチを決定するためにも使用されます。 パッチが複数の製品に適用される場合、または複数の修正プログラムが含まれている場合、パッチは複数の行に一覧表示され、複数のパッチ ファミリに属している可能性があります。
Windows インストーラーは、他の PatchFamily 値と等しいかどうかを比較する以外の方法で PatchFamily 値を解釈しません。 PatchFamily 値は、パッチのセットを対象とする ProductCode 内で一意である必要があります。 複雑なパッチ適用シナリオでは、PatchFamily 識別子をグローバルに一意にする必要がある場合があります。
-
productCode の
-
このフィールドの値は省略可能です。 このフィールドに GUID 製品コードが入力され、パッチが指定された製品に適用されている場合、パッチは並べ替えられて、指定された PatchFamily のメンバーとして適用されます。 このフィールドに製品コード GUID が入力され、ProductCode で指定された製品にパッチが適用されていない場合、この行は無視されます。 ProductCode の値が NULL の場合、パッチは並べ替えられて、製品コードに関係なくパッチのすべてのターゲットに対して PatchFamily のメンバーとして適用されます。
パッチには、同じ PatchFamily に複数の行を含め、パッチの対象となる製品ごとに異なる ProductCode を含めることができます。 PatchFamily の 1 行で ProductCode に NULL を指定できます。 ターゲット製品が NULL 以外の ProductCode を持つ行と一致する場合、インストーラーは一致する行を使用し、NULL ProductCode の行を無視します。 指定された製品コードのいずれもターゲットと一致しない場合、パッチは並べ替えられて、製品コードに関係なくパッチのすべてのターゲットに対して PatchFamily のメンバーとして適用されます。
-
シーケンス
-
[シーケンス] 列の値は、指定した PatchFamily 内のこのパッチのシーケンスを指定します。 Sequence の値は、バージョンの データの形式で表されます。 値には 1 ~ 4 個のフィールドが含まれており、各フィールドの範囲は 0 から 65535 です。 PatchFamily のメンバーは、シーケンス値を増やす順に並べ替え、ターゲット製品に適用されます。 たとえば、1、1.1、1.2、2.01、2.01.1、2.01.1 の 6 つの値が増加しています。
-
属性
-
msidbPatchSequenceSupersedeE 以前の 属性が行に存在すると、小さな更新プログラム パッチが、同じ PatchFamily 内のシーケンス値が小さいすべてのパッチによって提供される更新プログラムよりも優先されることを示します。 このパッチには、指定された PatchFamily の以前のパッチによって提供されたすべての修正プログラムが含まれています。 この属性は、以前のパッチが複数のパッチ ファミリに属している可能性があるため、すべてのケースで、このパッチが以前のパッチよりも優先されることを意味するわけではありません。
msidbPatchSequenceSupersede 以前の が設定されている場合でも、小さな更新プログラム 修正プログラムは、マイナー アップグレードまたはメジャー アップグレード パッチを置き換えることはできません。
名前 価値 意味 0x00 単純なシーケンス値を示します。 msidbPatchSequenceSupersedeE 以前の を する 0x01 このファミリの以前のパッチを置き換えるパッチを示します。
検証
関連トピック
-
Windows インストーラー 2.0 以前の ではサポートされていません