アンインストール可能なパッチ
パッチをアンインストールできるかどうかは、パッチの作成方法、パッチのインストールに使用された Windows インストーラーのバージョン、およびアプリケーションに対するパッチによって行われた変更によって異なります。 パッチがアンインストールできない場合、パッチを削除する唯一の方法は、アプリケーション全体をアンインストールし、削除されるパッチを適用せずに再インストールすることです。
Windows インストーラー バージョン 3.0 で適用された修正プログラムのアンインストールを呼び出す場合は、「コマンド ライン オプションの、MsiRemovePatches 関数、または RemovePatches メソッド を使用して、「パッチのアンインストール」セクションの説明に従って呼び出すことができます。 Windows インストーラーは、MSIPATCHREMOVE プロパティの削除対象として一覧表示されている各パッチがアンインストール可能であることを確認します。 ユーザーがパッチを削除する権限を持っていない場合、パッチが製品に対して不明な場合、パッチ ポリシーによって削除が禁止されている場合、またはパッチがアンインストール不可としてマークされている場合、インストーラーはインストール トランザクションの失敗を示すエラーを返します。
Windows インストーラー 2.0: サポートされていません。 Windows インストーラー 3.0 より前のバージョンの Windows インストーラーを使用して適用されたパッチはアンインストールできません。
アンインストールできないパッチ
インストールされているアプリケーションに適用されるパッチ (.msp ファイル) は、次の場合はアンインストールできません。 アンインストールできない修正プログラムを削除する唯一の方法は、修正プログラムが適用されたアプリケーションをアンインストールしてから、修正プログラムを再適用せずにアプリケーションを再インストールすることです。 この場合は、アプリケーションから削除したくないパッチを再適用する必要があります。
Windows インストーラー 3.0 より小さいバージョンの Windows インストーラーを使用して適用されたパッチはアンインストールできません。
DisablePatchUninstall ポリシーが管理者によって設定されているコンピューターにインストールされているアプリケーションに適用されたパッチはアンインストールできません。 この コンピューター ポリシーが設定されている場合、管理者であっても、コンピューター上の修正プログラムをアンインストールすることはできません。
データベースに MsiPatchMetadata テーブルがないパッチはアンインストールできません。
MsiPatchMetadata テーブルに次の行が含まれていないパッチはアンインストールできません。 この修正プログラムは、会社、プロパティ、および値の他の値についてはアンインストールできません。
会社 財産 価値 {Null} AllowRemoval 1 パッチは、ユーザーがパッチをアンインストールするための十分な権限を持っていないコンテキストでインストールされたアプリケーションに適用されています。 次の表の "許可されていません" という単語は、管理者または管理者以外のユーザーが、このコンテキストにインストールされている修正プログラムが適用されたアプリケーションからパッチをアンインストールできないことを示しています。 この表の "許可" という単語は、管理者または管理者以外のユーザーが修正プログラムをアンインストールできないようにする権限を意味しますが、このセクションで説明するその他の理由により、修正プログラムをアンインストールできない可能性があります。
アプリケーションのインストール コンテキスト 管理者による修正プログラムのアンインストール 管理者以外のパッチのアンインストール Per-Machine 許可 一般に許可されていません。唯一の例外は、パッチが (LUA) パッチ適用を使用して適用された場合です。 LUA パッチとしてマークされたパッチは、管理者または管理者以外がアンインストールできます。 LUA パッチ適用は、メディアからマシンごとにインストールされたパッケージでのみ使用でき、特別な作成が必要です。 現在のユーザーに対して管理されていない Per-User 許可 許可 異なるユーザーに対して管理されていない Per-User 禁じられた 禁じられた 現在のユーザーに対して管理される Per-User 許可 禁じられた Per-User 別のユーザーに対して管理 禁じられた 禁じられた パッチによって適用 メジャー アップグレードはアンインストールできません。 アプリケーションのメジャー アップグレードは、パッチではなく、アップグレードされたアプリケーション (.msi ファイル) をインストールして実行する必要があります。
管理インストールに適用されたパッチはアンインストールできません。 管理インストールに修正プログラムを適用することはお勧めしません。 ユーザーが管理イメージからアプリケーションをインストールした後、ユーザーのコンピューターに現在のパッチ セットを適用する必要があります。 これにより、ユーザーのコンピューターにキャッシュ パッケージ コードが、管理インストールのパッケージ コードと異ならないようにすることができます。 ユーザーのコンピューターにキャッシュされたパッケージ コードが管理インストールのパッケージ コードと異なる場合は、管理インストールからアプリケーションを再インストールし、クライアント コンピューターにパッチを適用します。
パッチが次の一覧のいずれかのテーブルに新しいコンテンツを追加すると、Windows インストーラーはパッチをアンインストール不可としてマークします。 アンインストール可能なパッチでは、この一覧に含まれていないデータベース テーブルに新しい行を追加することで、新しいファイル、アセンブリ、レジストリ エントリ、コンポーネント、または機能をインストールに追加できます。
BindImage の
CreateFolder の
DuplicateFile の
IniFile を する
IsolatedComponent の
LockPermissions の
MoveFile の
MsiServiceConfig の
ODBCAttribute の
ODBCDataSource の
ODBCDriver の
ODBCSourceAttribute の
ODBCTranslator の
ProgId の
PublishComponent の
RemoveIniFile の
ServiceControl の
TypeLib の
[!注]
修正プログラムが RemoveFile または RemoveRegistry テーブル に新しいコンテンツを追加した場合、Windows インストーラーは、この修正プログラムをアンインストール不可としてマークしません。 ただし、新しいコンテンツを削除するリソースが元のインストール パッケージにまだ存在しない限り、パッチはアンインストールできません。 たとえば、修正プログラムによって RemoveFile テーブルに新しい行が追加された場合、ファイルが File テーブルの外部にある場合、削除されたファイルをアンインストール復元できません。 ファイルは、元のパッケージの [ファイル] テーブルに作成されている必要があります。また、アンインストール可能な修正プログラムの適用済みパッチが必要です。
関連トピック