C#プロジェクト用のインストーラがあります。インストールを続行するには、ライセンスを入力する必要があります。私は、フォームをインスタンス化し、その上でShowDialogを呼び出すことによって、ユーザーからライセンスを取得します。インストールダイアログを最上位にする
私の問題は、ユーザーがインストール中に何かをクリックする可能性があることです。これは、ダイアログボックスが非表示になっている可能性があり、ユーザーがタスクバーのダイアログを検出するまで、インストールが続行されないことを意味します。ライセンスダイアログを一番上に表示したいのですが、どうやって行うのか分かりません。私は何とかBeforeInstallイベントハンドラからインストールアプリケーションを最上位にすることはできますか?インストーラは管理者権限で実行されます。
編集:回答を受け入れるにはあまりにも急いでいるようです。
using (var licenseDlg = new LicenseDialog())
{
licenseDlg.TopMost = true;
var result = licenseDlg.ShowDialog();
...
動作は以下の通りです:
- 私は私のプロジェクト
- をインストールしようと、私はそれを許可するようにUACをクリックして、私は今、このような私のBeforeInstallイベントハンドラに次のようにコードを持っていますインストールする
- 私はcmdウィンドウを最大化します。
何もしなければ、ある時点でライセンスウィンドウがcmdウィンドウにポップアップ表示されます。ただし、cmdプロンプトで何かを入力すると、毎秒約1クリックの割合でライセンスウィンドウがポップアップされず、タスクバーにのみ表示されます。他のウィンドウにアクティビティがある場合でも、ライセンスウィンドウを常にポップアップしたいと思います。
@Kochで – Boris
可能な重複? http://stackoverflow.com/questions/6213498/custom-installer-in-net-showing-form-behind-installer – rene
@rene:similar。インストーラを一番上に持っていくと、インストーラの上にダイアログが表示されます。 – Boris