ユーザー インターフェイスについて
Windows インストーラーには、インストール パッケージ開発者が、インストール時にエンドユーザーに表示されるグラフィカル ユーザー インターフェイス (GUI) を作成できるようにする機能が含まれています。 このユーザー インターフェイスでは、ユーザー インターフェイス ウィザードの動作を示したり、ダイアログ ボックスやビルボードを表示したり、インストール中にユーザーに対話型コントロールを提示したりできます。
インストーラーの内部 UI は、Windows インストーラー自体内の一連のデータベース テーブルで管理および制御されます。 インストーラーには、エラー メッセージと情報メッセージを処理するように意図された既定のダイアログ ボックスの小さなセットのみが用意されています。 すべてのカスタム ダイアログ ボックスは、パッケージ作成者が作成する必要があります。
パッケージ作成者がプログラムで UI を作成できるようにする具体的な Windows インストーラー API はありません。 Microsoft Windows API を使用してプログラムで UI を作成することは可能です。ただし、パッケージ作成者は、提供された内部 UI を使用することをお勧めします。
インストーラー パッケージの作成者は、ダイアログ テーブルの "_Dialog" 列にカスタム ダイアログの名前を入力し、残りの列を使用してサイズ、位置、その他の属性を指定することで、カスタム ダイアログ ボックスを作成します。
Windows インストーラーでは、パッケージ作成者がダイアログ ボックスに配置できる多数の標準コントロールを実装します。 すべての標準 Microsoft Windows コントロールを使用できるわけではありません。また、インストーラー UI で使用するためにカスタム コントロールを作成することはできません。
コントロールは、ダイアログ ボックスの名前、ダイアログ テーブル内のダイアログ ボックスのエントリの主キーをコントロール テーブルの 2 番目のフィールドに入力し、残りの列を使用してコントロールのサイズ、位置、その他の属性を指定することで、特定のダイアログ ボックス上に作成されます。
ユーザーがインストールを操作できるようにするには、ControlEvent テーブル内の ControlEvent にアクティブなコントロールをリンクする必要があります。 情報を受信および表示するパッシブ コントロールは、EventMapping テーブル内の適切な ControlEvent にサブスクライブする必要があります。
ControlEvent の詳細については、ControlEvent の概要に関するページを参照してください。 コントロールは、ControlEvent テーブルに一覧表示されている場合は ControlEvent を発行し、EventMapping テーブルに一覧表示されている場合はイベントにサブスクライブすることに注意してください。
インストール時のインストーラー UI の表示は、UI シーケンス テーブル (InstallUISequence テーブルと AdminUISequence テーブル) を使用して管理されます。 インストールを開始した最上位のアクション (INSTALL、ADMIN、または ADVERTISE) に応じて、これらのシーケンス テーブルの 1 つが実行されます。
Windows インストーラーでの UI の実装の詳細については、「ユーザー インターフェイスの使用」、「ユーザー インターフェイス スキーマ」、ダイアログ ボックスとコントロールに関する個々のトピックを参照してください。