2009-06-24 11 views
1

複数のコンポジットWPFアプリケーションを構成して、単一のシェルプロジェクトを共有するが、異なるApp.configファイルからモジュールカタログを取り込む方法を教えてください。複数のコンポジットWPFアプリケーションをまとめて1つのシェルを共有する

私は、WPF用複合アプリケーションガイダンスを使用して一連のアプリケーションを作成しています。各アプリケーションの機能は、シェルのApp.configに記載されているさまざまなモジュールの可用性によって決まります。各アプリケーションに異なるApp.configを与えることで、各アプリケーションが使用するモジュールを指定できます。

しかし、一般的なルックアンドフィールのために、すべてのアプリケーション間で1つのシェルプロジェクトを共有したいと考えています。最初に、各アプリケーションのソリューションを作成し、Shellプロジェクトを追加して、関連するモジュールを追加しました。問題は、共通のシェルプロジェクトには1つのApp.configファイルしかないため、ソリューション単位では変更できないということです。

コードを使用してカタログを挿入しても、この問題は回避されません。アプリケーション固有のコードがシェルに残っているため、使用しているソリューションによって何とか起動する必要があります。

答えて

1

私は、Shellを独自のモジュールとして扱うことにしました。各アプリケーションには独自のソリューションとプロジェクトがあり、個々のApp.configファイルが含まれています。彼らはまた独自のBootstrapperクラスを持っています。各アプリケーションのBootstrapperがシェルをインスタンス化します。

0

ハードコーディングモジュールと構成からモジュールをロードすることは別として、特定のディレクトリからモジュールを動的にロードすることもできます。

すべて同じシェルを使用する異なる「アプリケーション」を設定するには、各アプリケーションの適切なモジュールを別々のフォルダにコピーして、異なるアプリケーションを作成するバッチファイルを作成します。

複合ガイダンスライブラリのドキュメントでは、モジュールをディレクトリから動的に読み込むようにプロジェクトを設定する方法について詳しく説明しています。

関連する問題