次の方法で共有


UiCreatePatchPackageEx (Patchwiz.dll)

UiCreatePatchPackageEx 関数は、パッケージ作成ファイル (.pcp ファイル) を受け取り、Windows インストーラー パッチ パッケージ (.msp パッケージ) を生成します。 Patchwiz.dll を使用する場合は、Msimsp.exe の呼び出しが推奨される方法です。

UiCreatePatchPackageEx 関数は、Patchwiz.dll バージョン 4.0 以降で使用でき、UiCreatePatchPackage 関数の機能を拡張します。

UINT UiCreatePatchPackageEx(
  LPCTSTR szPcpPath,              
  LPCTSTR szPatchPath,            
  LPCTSTR szLogPath,             
  HWND hwndStatus,                
  LPCTSTR szTempFolder,           
  BOOL fRemoveTempFolderContents,
  DWORD dwFlags,
  DWORD dwReserved    
);

パラメーター

szPcpPath

このパッチのパッチ作成プロパティ ファイル (.pcp ファイル) への完全なパス。

szPatchPath

作成する Windows インストーラー パッチ パッケージ (.msp ファイル) への完全なパス。 このパラメーターは NULL または空の文字列にできますが、省略はできません。 NULL または空の文字列の場合、この関数は Properties テーブル (Patchwiz.dll) の PatchOutputPath の値を使用します。

szLogPath

追加されるテキスト ログ ファイルへの完全なパス。 このパラメーターは NULL または空の文字列にできますが、省略はできません。

hwndStatus

状態テキストを表示するウィンドウへのハンドル。 このパラメーターは NULL または空の文字列にできますが、省略はできません。

szTempFolder

一時ファイルの場所。 このパラメーターは NULL または空の文字列にできますが、省略はできません。 ユーザーには、このフォルダーの読み取りと書き込みに十分な権限が必要です。 既定の場所は %TMP%\~pcw_tmp.tmp\ です。

fRemoveTempFolderContents

TRUE の場合、一時フォルダーとそのすべての内容 (存在する場合) を削除します。 FALSE で、フォルダーが存在する場合、関数は失敗します。

dwFlags

このパラメーターは、ログ記録オプションまたはユーザー インターフェイス オプションを指定するために、次の値の 1 つまたは組み合わせで設定できます。

フラグ 説明
LOGNONE 0x00000000 ログにメッセージを書き込みません。
LOGINFO 0x00000001 ログに情報メッセージを書き込みます。
LOGWARN 0x00000002 ログに警告を書き込みます。
LOGERR 0x00000004 ログにエラー メッセージを書き込みます。
LOGPERFMESSAGES 0x00000008 ログにパフォーマンス メッセージを書き込みます。
UINONE 0x00000000f ユーザー インターフェイスを表示しません。
UIALL 0x00000010 ユーザー インターフェイスを表示します。

 

dwReserved

予約済み。 このパラメーターは 0 に設定する必要があります。

戻り値

UiCreatePatchPackage の戻り値」の表を参照してください。

解説

.pcp ファイルを作成し、UiCreatePatchPackage を使用して Windows インストーラー パッチ パッケージを生成する例については、「小規模な更新プログラムのパッチ適用の例」のセクションを参照してください。

パッチを作成するには、管理イメージや CD-ROM からの非圧縮セットアップ イメージなどの非圧縮セットアップ イメージが必要です。 UiCreatePatchPackage では、キャビネット内のファイルのバイナリ パッチは生成されません。