次の方法で共有


相互運用マーシャリング

このセクションは、プラットフォーム呼び出し、COM 相互運用機能、またはその両方を使用してデータのマーシャリングを行うプログラマを対象としています。この 2 つの機構では、マーシャリング規則と既定のデータ型に多少の違いがあります。

  • プラットフォーム呼び出しを使用する場合は、このセクションで示す文字列、配列、クラス、構造体、共用体、および各種のデータ型の例を参照してください。

  • COM 相互運用機能を使用する場合は、このセクションで示す相互運用ラッパーのカスタマイズ方法を参照してください。

相互運用マーシャリングは、メソッドの呼び出し時に、マネージ メモリとアンマネージ メモリの間で、そのメソッドの引数および戻り値としてデータがどのように受け渡しされるのかを制御します。相互運用マーシャリングは、共通言語ランタイムのマーシャリング サービスによって実行される実行時の処理です。

このセクションでは、相互運用マーシャリング サービスの概要を示し、アンマネージ メモリ内では異なる表現またはあいまいな表現を持つデータ型がどのようにマーシャリングされるのかについて詳細に説明します。また、MarshalAsAttribute 属性を適用し、Marshal クラスによって公開されるメソッドを使用することで、既定のマーシャリング動作を変更する方法も説明します。

このセクションの内容

  • 相互運用マーシャリングの概要
    相互運用マーシャリング サービス、COM マーシャリングとの関係、およびリモート通信におけるその役割について説明します。
  • 方法 : HRESULT に例外を割り当てる
    カスタム例外を HRESULT に対応付ける方法について説明し、各 HRESULT から .NET Framework 内の比較可能な例外クラスへの完全な対応付けの方法を示します。

関連するセクション

  • 高度な COM 相互運用性
    .NET Framework アプリケーションへの COM コンポーネントの組み込みに関する詳細な情報へのリンクを提供します。