PINSTALLUI_HANDLER_RECORD
コールバックシグネチャ
INT PINSTALLUI_HANDLER_RECORD(
void* pvContext,
DWORD iMessageType,
MSIHANDLE hRecord
);パラメーター
| フィールド | 型 | 説明 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| pvContext | void* | MsiSetExternalUIRecord 関数に渡された アプリケーションコンテキストへのポインター。このパラメーターはエラーチェックに使用できます。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| iMessageType | DWORD | 1 つのメッセージボックススタイル、1 つのメッセージボックスアイコンの種類、1 つの既定のボタン、および 1 つの インストールメッセージの種類の組み合わせを指定します。このパラメーターは次のいずれかである必要があります。
上記のメッセージのいずれかが指定されていない場合は、次の既定値が使用されます: MB_OK、アイコンなし、 MB_DEFBUTTON1。インストールメッセージの種類に既定値はなく、メッセージの種類は常に指定されます。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| hRecord | MSIHANDLE | レコードオブジェクトへのハンドルを指定します。レコードオブジェクトの詳細については、レコード処理関数を参照してください。 |
公式ドキュメント
INSTALLUI_HANDLER_RECORD 関数プロトタイプは、 進行状況の通知やエラーメッセージのためにインストーラーが呼び出すコールバック関数を定義します。 レコードベースの外部ユーザーインターフェイス (UI) ハンドラーを有効にするには、MsiSetExternalUIRecord 関数を 呼び出します。
Windows Installer 3.0 および Windows Installer 2.0: サポートされていません。Windows Installer バージョン 3.1 以降で利用できます。
戻り値
次の戻り値は、メッセージボックスのスタイルで指定されたボタンに対応します:
IDOK
解説(Remarks)
この種類の外部 UI ハンドラーは、呼び出し元が関心を持つエラーやメッセージの種類があらかじめ分かっており、 INSTALLUI_HANDLER 型の外部 UI ハンドラーに送られる文字列メッセージを解析するオーバーヘッドを避けて、 必要なデータを hRecord のフィールドから取得したい場合に使用します。
外部ユーザーインターフェイスハンドラーから値を返す方法の詳細については、 外部ユーザーインターフェイス ハンドラーからの値の返却のトピックを参照してください。レコードベースの外部 UI ハンドラーに送られる hRecord オブジェクトは Windows Installer が所有しており、コールバックの有効期間中のみ有効です。コールバックはレコードから 必要なデータを取り出す必要があり、そのハンドルを閉じてはいけません。
レコードベースの外部 UI ハンドラーが hRecord オブジェクト内のデータを変更しようとしても、 Windows Installer はそれを無視します。
レコードベースの外部ハンドラーの使用方法の詳細については、MsiSetExternalUIRecord を使用したインストールの監視を参照してください。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)