アンマネージ コードとの相互運用

.NET Framework は、COM コンポーネント、COM+ サービス、外部のタイプ ライブラリ、各種のオペレーティング システム サービスとの相互運用を促進します。 データ型、メソッド署名、およびエラー処理機構は、マネージド オブジェクト モデルとアンマネージド オブジェクト モデルでは異なります。 .NET Framework コンポーネントとアンマネージ コードの間の相互運用を簡素化し、移行パスを簡単にするために、共通言語ランタイムがクライアントとサーバーの両方からこれらのオブジェクト モデルの違いを隠します。

ランタイムの制御下で実行されるコードは、マネージド コードと呼ばれます。 逆に、ランタイムの外部で実行されるコードはアンマネージ コードと呼ばれます。 アンマネージ コードの例としては、COM コンポーネント、ActiveX インターフェイス、Windows API 関数があります。

このセクションの内容

.NET Framework への COM コンポーネントの公開
.NET Framework アプリケーションから COM コンポーネントを使用する方法について説明します。

COM への .NET Framework コンポーネントの公開
COM アプリケーションから .NET Framework コンポーネントを使用する方法について説明します。

アンマネージ DLL 関数の処理
プラットフォーム呼び出しを使用して、アンマネージ DLL 関数を呼び出す方法について説明します。

相互運用マーシャリング
COM 相互運用機能とプラットフォーム呼び出しのマーシャリングについて説明します。

方法: HRESULT に例外を割り当てる
例外と HRESULT の間のマッピングについて説明します。

型の等価性と埋め込まれた相互運用機能型
COM 型の型情報をアセンブリに埋め込む方法と、共通言語ランタイムが埋め込みの COM 型の等価性を決定する方法について説明します。

方法: Tlbimp.exe を使用してプライマリ相互運用機能アセンブリを生成する
Tlbimp.exe (タイプ ライブラリ インポーター) を使用して、プライマリ相互運用機能アセンブリを生成する方法について説明します。

方法: プライマリ相互運用機能アセンブリを登録する
プロジェクトで参照する前に、プライマリ相互運用機能アセンブリを登録する方法について説明します。

登録を必要としない COM 相互運用機能
COM 相互運用機能によって Windows レジストリを使用せずにコンポーネントをアクティブ化する方法を説明します。

方法: 登録を必要としないアクティベーション用の .NET Framework ベースの COM コンポーネントを構成する
アプリケーション マニフェストを作成する方法と、コンポーネント マニフェストを作成して埋め込む方法について説明します。

COM ラッパー
COM 相互運用機能が提供するラッパーをについて説明します。