プライマリ相互運用機能アセンブリを使ったプログラミング
相互運用機能アセンブリには、既存の COM 型を記述するメタデータが格納されています。 これらの型は、通常、既に COM タイプ ライブラリに記述されています。 タイプ ライブラリ インポーター (Tlbimp.exe) を使用することによって、COM タイプ ライブラリから相互運用機能アセンブリを作成できます。
開発者は .NET Framework アプリケーションから COM 型を使用する場合に相互運用機能アセンブリを生成できますが、これには問題があります。 開発者が COM タイプ ライブラリをインポートして署名するたびに、その開発者は他の開発者がインポートして署名した型とは互換性のない固有の型のセットを作成することになります。 この型の非互換性の問題を解決するには、販売元から署名して提供されるプライマリ相互運用機能アセンブリを各開発者が入手する必要があります。
サード パーティの COM 型を他のアプリケーションに公開する場合は、プライマリ相互運用機能アセンブリで定義されているタイプ ライブラリと同じ発行元から提供されるプライマリ相互運用機能アセンブリを使用します。 型の互換性を保証することに加えて、相互運用性を向上させるために販売元がプライマリ相互運用機能アセンブリをカスタマイズしている場合があります。
サード パーティの COM 型を公開しない場合でも、プライマリ相互運用機能アセンブリを使用することによって、COM コンポーネントとの相互運用の処理が簡単になります。 ただし、この手法では、プライマリ相互運用機能アセンブリで定義されている型を販売元が変更した場合に、この変更を分離できません。 アプリケーションでこのような変更を分離する必要がある場合は、プライマリ相互運用機能アセンブリを使用する代わりに、独自の相互運用機能アセンブリを生成します。