2010-11-26 18 views
1

長時間の作業ルーチンを実行しているときにセットアッププロジェクトがWindowsサービスをアンインストールしないようにするにはどうすればよいですか?セットアッププロジェクトがビジー状態のサービスをアンインストールしないようにする

MSIは、「サービスが現在ビジー状態であり、アンインストールできない」と報告するのが理想的です。

サービスがビジーでインストールが失敗したかどうかをインストーラが確認するための条件を作成するにはどうすればよいですか?

答えて

0

アプリケーションにはInstallerクラスを使用できます。 OnBeforeUninstallメソッドをオーバーライドして、プロセスが実行されているかどうかを確認し、処理を続行する前にプロセスが停止するのを待つことができます。

0

YWEが公開しているのと同様の解決策は、DLL内でカスタムアクションを作成し、アンインストールプロセスの開始時にDLLを実行することです。カスタムアクションでは、サービスのステータスを確認するために質問することができ、ビジー状態になっている場合は、ユーザーに関連するメッセージでインストールを失敗させることができます。

Walkthrough: Creating a custom action

関連する問題