INSTALLUI_HANDLER_RECORD関数プロトタイプは、インストーラーが進行状況通知とエラー メッセージを呼び出すコールバック関数を定義します。 MsiSetExternalUIRecord 関数を呼び出して、レコードベースの外部ユーザー インターフェイス (UI) ハンドラーを有効にします。
Windows インストーラー 3.0 と Windows インストーラー 2.0: サポートされていません。 Windows インストーラー バージョン 3.1 以降で使用できます。
構文
INSTALLUI_HANDLER_RECORD InstalluiHandlerRecord;
int InstalluiHandlerRecord(
LPVOID pvContext,
UINT iMessageType,
MSIHANDLE hRecord
)
{...}
パラメーター
pvContext
MsiSetExternalUIRecord 関数に渡されるアプリケーション コンテキストへのポインター。 このパラメーターは、エラー チェックに使用できます。
iMessageType
1 つのメッセージ ボックス スタイル、1 つのメッセージ ボックス アイコンの種類、1 つの既定のボタン、1 つのインストール メッセージの種類の組み合わせを指定します。 このパラメーターは、次のいずれかである必要があります。
| 既定の ButtonsFlag | 意味 |
|---|---|
|
最初のボタンは既定のボタンです。 |
|
2 番目のボタンは既定のボタンです。 |
|
3 番目のボタンは既定のボタンです。 |
| メッセージ TypesFlag をインストールする | 意味 |
|---|---|
|
早期終了 |
|
書式設定されたエラー メッセージ |
|
書式設定された警告メッセージ |
|
ユーザー要求メッセージ。 |
|
ログに関する情報メッセージ |
|
置き換える前に閉じる必要がある現在使用中のファイルの一覧 |
|
有効なソースの場所を決定する要求 |
|
置き換える前に閉じる必要がある現在使用中のファイルの一覧。 Windows インストーラー バージョン 4.0 以降で使用できます。 詳細については、「外部 UI での Restart Manager の使用」を参照してください。 |
|
ディスク領域が不足しているというメッセージ |
|
アクション メッセージの開始。 このメッセージには、アクション名と説明が含まれています。 |
|
個々のアクション アイテムに関連付けられている書式設定されたデータ。 |
|
進行状況ゲージの情報。 このメッセージには、これまでのユニットと合計ユニット数に関する情報が含まれています。 |
|
ユーザー インターフェイスの書式設定されたダイアログ情報。 |
|
UI の初期化前に送信され、文字列データはありません |
|
UI の終了後に送信され、文字列データはありません |
|
作成されたダイアログまたはウィザードの表示前に送信される |
|
製品のインストール前に送信されます。 |
|
製品のインストール後に送信されます。 |
上記のメッセージのいずれかが見つからない場合は、次の既定値を使用する必要があります。MB_OK、アイコンなし、MB_DEFBUTTON1。 既定のインストール メッセージの種類はありません。メッセージの種類は常に指定されます。
hRecord
レコード オブジェクトへのハンドルを指定します。 レコード オブジェクトの詳細については、「 レコード処理関数」を参照してください。
戻り値
次の戻り値は、メッセージ ボックス スタイルで指定されたボタンにマップされます。
IDOK
注釈
この種類の外部 UI ハンドラーは、呼び出し元が関心のあるエラーまたはメッセージの種類がわかっている場合に使用する必要があります。また、INSTALLUI_HANDLER型の外部 UI ハンドラーに送信される文字列メッセージを解析するオーバーヘッドを回避し、hRecord のフィールドから目的のデータを取得する必要があります。
外部ユーザー インターフェイス ハンドラーから値を返す方法の詳細については、「外部ユーザー インターフェイス ハンドラー から値を返す 」トピックを参照してください。 レコード ベースの外部 UI ハンドラーに送信される hRecord オブジェクトは、Windows インストーラーによって所有され、コールバックの有効期間に対してのみ有効です。 コールバックは、必要なデータをレコードから抽出し、そのハンドルを閉じないようにする必要があります。
レコード ベースの外部 UI ハンドラーが hRecord オブジェクト内のデータを変更しようとすると、Windows インストーラーは無視されます。
レコード ベースの外部ハンドラーの使用について詳しくは、「MsiSetExternalUIRecord を使用したインストールの監視」をご覧ください。
要件
| 要件 | 値 |
|---|---|
| サポートされている最小のクライアント | 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 インストーラー 3.1。 |
| 対象プラットフォーム | Windows |
| ヘッダー | msi.h |