MarshalAsAttribute 属性の使用方法

更新 : 2007 年 11 月

MarshalAsAttribute 属性を使用して、マーシャリングの動作をカスタマイズできます。たとえば、次のタスクを実行できます。

  • 構造体での配列と文字列のマーシャリング

  • 一般的な COM 相互運用シナリオをサポートするために必要な柔軟性を備えること

  • IDispatch マーシャラと比較して、プラットフォーム呼び出しと vtable マーシャラによってマーシャリングの型に一貫性を持たせること

UnmanagedType 列挙型の値について、マーシャリングのサポートを次の表に示します。

アンマネージ型

有効な型

構造体でのサポート

BStr, TBStr

String

LPWStr,

LPStr, LPTStr

String

IUnknown

Object

IDispatch

Object

ByValTStr

String (構造体でのみ)

ByValArray

任意の配列

SafeArray

任意の配列

VBByRefStr

String

Bool

Boolean,

整数型

I1, I2, I4

適切な長さの整数型

U1, U2, U4

適切な長さの符号なし整数型

I8

なし

U8

なし

R4

4 バイトの実数

R8

8 バイトの実数

Struct

Object

Interface

Object

SysInt, SysUInt

適切な符号と長さの整数型

AnsiBStr

なし

VariantBool

Boolean

FunctionPtr

なし

AsAny

なし

LPArray

なし

LPStruct

なし

Error

4 バイトの整数型

Currency

Decimal

参照

その他の技術情報

.NET Compact Framework のマーシャリング サポート