2009-02-26 10 views
1

MSIのインストールおよびコミットステージをオーバーライドするためにC#カスタムアクションをトリガすることができました。しかし、ASP.NETアプリケーションをデプロイするときに、インストールが始まる前にチェックを実行できるようにしたいと考えています。MSIの起動条件カスタムアクション

起動条件があることは知っていますが、自分のコードをここに差し込み、起動時のチェックを自分自身で実行できるようにしたいと思います。起動条件は、IISの正しいバージョン等?

誰かが正しい方向に私を指し示すことができますか、または起動条件を取得してCを起動する方法がある場合でもですか?

答えて

1

カスタムアクションを使用してプロパティ値を設定し、プロパティ値をチェックするための起動条件を実行すると、1つの方法だと思います。しかし、カスタムアクションは起動条件の後まで実行されないため、VSインストールプロジェクトには当てはまりません。 WiXを使用すると、より高度な制御が可能になり、カスタムアクションを早期に実行できるようになります。

カスタムアクションを実行すると、例外がスローされ、インストールがロールバックされることがありますが、それは醜いハックになります。

正しい方向にあなたを導く可能性のある特定のサービスがインストールされているかどうかを確認する方法については、forum threadが見つかりました。

+1

'フォーラムのスレッド'のリンクが死んでいます –

1

LaunchConditionsの後にカスタムアクションをすぐににスケジュールするだけです。結果はすべての意図と目的で同じです。

InstallShieldでは、ドロップダウンメニューから実行するときに選択するだけです。またはのようなものだろうWiXの、使用して:いつものように

<Custom Action="BlahBlahBlah" After="LaunchConditions">1</Custom> 

を、MSIを使い始める人のために私はThe Definitive Guide to Windows Installerを読んでお勧めします。 WiX、InstallShield、またはMSIファイルを構築するための他のツールを使用している場合でも、適用される貴重な低レベルの知識(Visual StudioセットアッププロジェクトとOrcaを使用)を提供します。

関連する問題