次の方法で共有


MsiApplyPatchA 関数 (msi.h)

パッチ パッケージによってパッチを受け取る資格がある製品ごとに、MsiApplyPatch 関数によってインストールが呼び出され、PATCH プロパティがパッチ パッケージのパスに設定されます。

構文

UINT MsiApplyPatchA(
  [in] LPCSTR      szPatchPackage,
  [in] LPCSTR      szInstallPackage,
  [in] INSTALLTYPE eInstallType,
  [in] LPCSTR      szCommandLine
);

パラメーター

[in] szPatchPackage

パッチ パッケージへの完全なパスを指定する null で終わる文字列。

[in] szInstallPackage

eInstallType が INSTALLTYPE_NETWORK_IMAGE に設定されている場合、このパラメーターは、パッチを適用する製品へのパスを指定する null で終わる文字列です。 szInstallPackage が null に設定され、eInstallType が INSTALLTYPE_DEFAULT に設定 場合、インストーラーはパッチ パッケージに記載されているすべての対象製品にパッチを適用します。

eInstallType INSTALLTYPE_SINGLE_INSTANCE場合、インストーラーは、szInstallPackageで指定された製品にパッチを適用します。 この場合、パッチ パッケージにリストされている他の対象製品は無視され、szInstallPackage パラメーターには、パッチを適用するインスタンスの製品コードを表す null で終わる文字列が含まれます。 この種類のインストールには、Windows Server 2003 または Windows XP を実行しているインストーラーが必要です。

[in] eInstallType

このパラメーターは、パッチを適用するインストールの種類を指定します。

インストールの種類 意味
INSTALLTYPE_NETWORK_IMAGE
管理インストールを指定します。 この場合、szInstallPackage をパッケージ パスに設定する必要があります。 INSTALLTYPE_NETWORK_IMAGEの値 1 は、管理インストールに対してこれを設定します。
INSTALLTYPE_DEFAULT
パッチを適用する製品をシステムで検索します。 この場合、szInstallPackage は 0 である必要があります。
INSTALLTYPE_SINGLE_INSTANCE
szInstallPackageで指定された製品にパッチを適用します。 szInstallPackage は、パッチを適用するインスタンスの製品コードです。 この種類のインストールには、Windows Server 2003 または Windows XP SP1 を実行しているインストーラーが必要です。 詳細については、「製品およびパッチの複数インスタンスのインストール」を参照してください。

[in] szCommandLine

コマンド ライン プロパティの設定を指定する null で終わる文字列。 コマンド ラインの プロパティの設定のパブリック プロパティ値についてを参照してください。 「解説」セクションを参照してください。

戻り値

価値 意味
ERROR_SUCCESS
関数は正常に完了しました。
ERROR_PATCH_PACKAGE_OPEN_FAILED
パッチ パッケージを開けませんでした。
ERROR_PATCH_PACKAGE_INVALID
パッチ パッケージが無効です。
ERROR_PATCH_PACKAGE_UNSUPPORTED
パッチ パッケージはサポートされていません。
アクション に関連するエラー
エラー コードを参照してください。
初期化エラーの
初期化エラーが発生しました。

備考

変換、ソース、パッチのリスト区切り記号はセミコロンであるため、この文字はファイル名またはパスには使用しないでください。

ノート  

小さな更新プログラムの を適用する場合、またはマイナー アップグレード 修正プログラムを適用する場合は、コマンド ラインで REINSTALL プロパティ 設定する必要があります。 このプロパティがないと、パッチはシステムに登録されますが、ファイルを更新することはできません。 カスタム アクション タイプ 51 を使用して REINSTALL および REINSTALLMODE プロパティを自動的に設定しないパッチの場合、REINSTALL プロパティは、szCommandLine パラメーターを使用して明示的に設定する必要があります。 の REINSTALL プロパティを設定して、パッチの影響を受ける機能を一覧表示するか、実際の既定の設定 "REINSTALL=ALL" を使用します。 REINSTALLMODE プロパティの既定値は "omus" です。 Windows インストーラー バージョン 3.0 以降では、REINSTALL プロパティはインストーラーによって構成され、コマンド ラインで設定する必要はありません。

 

手記

msi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして MsiApplyPatch を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Server 2012、Windows 8、Windows Server 2008 R2、または Windows 7 の Windows インストーラー 5.0。 Windows Server 2008 または Windows Vista の Windows インストーラー 4.0 または Windows インストーラー 4.5。 Windows Server 2003 または Windows XP 上の Windows インストーラー。 Windows インストーラーのバージョンで必要な最小 Windows Service Pack の詳細については、Windows インストーラーの Run-Time 要件を参照してください。
ターゲット プラットフォーム の ウィンドウズ
ヘッダー msi.h
ライブラリ Msi.lib
DLL Msi.dll

関連項目

エラー コードの

初期化エラーの

Multiple-Package インストール

Windows インストーラー 2.0 以前の ではサポートされていません