分離アプリケーションとサイド バイ サイド アセンブリについて
分離されたアプリケーション と サイド バイ サイド アセンブリ は、 DLL のバージョン管理の競合を軽減するソリューションを提供します。 アプリケーションがアセンブリを安全に共有できるようにします。 詳細については、「 共有アセンブリ」を参照してください。
アセンブリは、プログラミング コードのブロックの名前付け、バインド、バージョン管理、配置、または構成を行う基本的な単位です。 共通機能を持つアプリケーションでは、モジュールまたはコード アセンブリと呼ばれるプログラミング コードの共有ブロックを実行できます。 これらのコード アセンブリは、DLL または COM アセンブリに配置できます。 アセンブリの安全な共有のためのインフラストラクチャは、サイド バイ サイド アセンブリ共有と呼ばれます。
サイド バイ サイド アセンブリ は、 マニフェスト によって記述され、複数のバージョンが互いに競合することなく同時に実行されるように作成されたコード アセンブリです。 開発者がマニフェストを作成し、 サイド バイ サイド アセンブリ共有を使用するアプリケーションを作成すると、複数のアセンブリ バージョンをシステム上で実行でき、各アプリケーションで使用するアセンブリ バージョンを指定できます。
一般的な サイド バイ サイド アセンブリ は、1 つのマニフェストを持つ単一の DLL です。 サイド バイ サイド アセンブリは、従来はレジストリに保存されているバインディングと COM のアクティブ化に関する情報をマニフェストに格納します。 場合によっては、アセンブリパブリッシャー、アプリケーション開発者、または管理者によって、マニフェストで指定されたアセンブリのバージョンをグローバルまたはアプリケーションごとに変更できます。 詳細については、「既定の 構成、 発行元の構成、 アプリケーションごとの構成」を参照してください。
開発者は、Microsoft によって提供されるサイド バイ サイド アセンブリ、または他のサイド バイ サイド アセンブリ発行元をアプリケーションで使用できます。 たとえば、開発者は、Comctl32.dll 6.0 を含むサイド バイ サイド アセンブリを使用するようにアプリケーションを設計することで、テーマなどの更新された共通コントロールの機能を取得できます。 Windows XP に付属するサイド バイ サイド アセンブリとマニフェストの一覧については、「 サポートされている Microsoft Side-by-side Assemblies」を参照してください。 開発者は、独自のサイド バイ サイド アセンブリを作成することもできます。 詳細については、「 Side-by-side アセンブリを作成するためのガイドライン」を参照してください。