Share via


複数パッチのインストール

Windows インストーラー 3.0 以降では、パッチがシステムに提供される順序に関係なく、複数のパッチを一定の順序で製品に適用できます。

Windows インストーラー 2.0: サポートされていません。 バージョン 3.0 より前の Windows インストーラーバージョンでは、常にシステムに提供される順序でパッチがインストールされます。

Windows インストーラー 3.0 以降: インストーラーでは MsiPatchSequence テーブルに記載されている情報を使用して、Windows インストーラー パッケージに適用できるパッチと、パッチを適用する順序を判別できます。 アプリケーションでは、MsiDetermineApplicablePatches 関数と MsiDeterminePatchSequence 関数を使用できます。

MsiDetermineApplicablePatches 関数では、Windows インストーラー パッケージに適用されるパッチとその順序を決定します。 この関数では、置き換えられたパッチまたは古いパッチも考慮に入れることができます。 この関数では、セットで指定されていないシステムにインストールされている製品またはパッチは考慮されません。

MsiDeterminePatchSequence シーケンス関数では、指定したインストール済み製品に対するパッチの最適な適用順序を判別できます。 この関数では、製品に既に適用されているパッチが考慮され、古いパッチや置き換えられたパッチが考慮されます。

パッチ パッケージに MsiPatchSequence テーブルがない場合、インストーラーでは常に、システムに提供された順序でパッチを適用します。

パッチ パッケージに、MsiPatchSequence テーブルのシーケンス情報があるパッチと、この情報がないパッチが混在している場合、Windows インストーラー 3.0 では、「パッチのシーケンス処理」セクションで説明されている順序でパッチのシーケンス処理を行います。

Windows インストーラー パッケージでは、アプリケーションのインストールまたは更新時に 127 個以下のパッチをインストールできます。 多くの更新プログラムが必要な場合は、それらを組み合わせる必要があり、以前の古いパッチをパッチ適用シーケンスから削除する必要があります。

使用すべきでないパッチは、パッチ適用シーケンスから除外できます。 これにより、ターゲット アプリケーションにパッチが適用されるときに、そのパッチは適用されなくなります。 これは、アプリケーションに既に適用されているパッチの削除とは異なります。 パッチ適用シーケンスからパッチを除外することについて詳しくは、「パッチの除外」を参照してください。 適用されたパッチの削除については、「パッチの削除」をご覧ください。

MsiPatchSequence テーブルがすべてにある場合に Windows インストーラーで複数のパッチを適用する方法の例については、「複数パッチ適用の例」を参照してください。