インストーラーで ARP から [キャンセル] ボタンを非表示にするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/3705155

質問

ユーザーが ARP で [削除] をクリックしたときに、インストーラーで [キャンセル] ボタンを非表示または無効にできる必要があります。それを行う方法はありますか?また、ある場合はどのようにすればよいですか?(/qb を追加します!UninstallString レジストリ値へのコマンド ライン オプションは機能しません。私は試した。Wise Windows Installer Editor に関係する場合を除き、IDE 固有の回答はご遠慮ください。)

編集: Christopher Painter の答えはトリックには当てはまりますが、100% の解決策ではありません。残念ながら、InstallFinalize アクションでは再び [キャンセル] ボタンが表示され、その直後にカスタム アクションを別の呼び出しにしても、ボタンはユーザーがクリックできる十分な時間表示されたままになります。(カスタム アクション中にメッセージ ボックスを表示して、いつ呼び出されるかを確認することでこれを確認しました。) [キャンセル] ボタンを非表示にしたら、それは非表示のままにしておきたいと思います。期間。それを達成する方法はありますか?

役に立ちましたか?

解決

製品が MSI の場合、UninstallString レジストリ値は ARP によって無視されます。それを実行できる唯一の方法はカスタム アクションを使用することだと思います。

余談ですが、なぜこんなことをする必要があるのか​​不思議です。ロールバックをサポートしていないカスタム アクションがあると思いますか?私はむしろその問題を解決し、ユーザーが考えを変えることができるようにし続けたいと考えています。

インストール中にキャンセルボタンを非表示にする

インストールは、DLLカスタムアクションまたはスクリプトを使用してInstallMessage_Commondataメッセージを送信することにより、インストールの一部でキャンセルボタンを非表示にして非表示にできます。詳細については、動的リンクライブラリ、スクリプト、カスタムアクション、およびmsiprocessmessageを使用してWindowsインストーラーにメッセージを送信することを参照してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top