パッケージ、管理されたブートストラップアプリケーション、およびバンドルで構成されるセットアップを作成しました。管理されたブートストラップアプリケーションでパッケージが失敗したときのエラーメッセージの処理方法
パッケージが失敗した場合、特定の状況下ではError
イベントが呼び出されないことに注意してください。私は既にWixBAの設定からInstallationViewModel.cs
を見ましたが、解決策が見つかりませんでした。
これを正しく処理するにはどうすればよいですか?
詳細:
パッケージは
<firewall:FirewallException ... />
を作成し、私は、「Windowsファイアウォール」サービスが実行されていないとき、これは失敗することを指摘しました。 (私はそれがバグの報告と機能のかどうか分かりませんが、この質問はこの程度ではありません。)
はパッケージのログファイルが含まれています:
ExecFirewallExceptions: Installing firewall exception2 Foo (C:\Program Files (x86)\Foo\Foo.exe)
ExecFirewallExceptions: Error 0x800706d9: failed trying to find existing app
ExecFirewallExceptions: Error 0x800706d9: failed to add/update application exception for name 'Foo', file 'C:\Program Files (x86)\Foo\Foo.exe'
CustomAction WixExecFirewallExceptionsInstall returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
メインのログファイルが含まれています
e000: Error 0x80070643: Failed to install MSI package.
e000: Error 0x80070643: Failed to execute MSI package.
e000: Error 0x80070643: Failed to configure per-machine MSI package.
ロールバックが実行され、すべて正常に動作しますが、エラーメッセージは表示されません。
ユーザーにエラーメッセージを表示するにはどのようなイベントを処理する必要がありますか?これを正しく処理する他の方法はありますか?
あなたは解決策を見つけましたか? – mayooran
@mayooranインストールが実際に始まる前に、私はファイアウォールサービスが動作しているかどうかテストし、そうでなければ、ユーザに警告します。ハックのようなものだが、うまくいく。 – Martin