다음을 통해 공유


COM 데이터 형식

업데이트: 2007년 11월

다음 표에서는 COM에서 사용되는 데이터 형식과 이에 대응하는 .NET Framework 기본 제공 값 형식 또는 클래스를 보여 줍니다. 이 표에서 명시적으로 다루지 않은 모든 형식은 Int32 시스템 형식으로 변환됩니다. Visual Basic 2005, C# 및 C++의 해당 형식을 보려면 .NET Framework 클래스 라이브러리 개요를 참조하십시오.

COM 값 형식

COM 참조 형식

시스템 형식

bool

bool *

System.Int32

char, small

char *, small *

System.SByte

short

short *

System.Int16

long, int

long *, int *

System.Int32

Hyper

hyper *

System.Int64

unsigned char, byte

unsigned char *, byte *

System.Byte

wchar_t, unsigned short

wchar_t *, unsigned short *

System.UInt16

unsigned long, unsigned int

unsigned long *, unsigned int *

System.UInt32

unsigned hyper

unsigned hyper *

System.UInt64

float

float *

System.Single

double

double *

System.Double

VARIANT_BOOL

VARIANT_BOOL *

System.Boolean

void*

void **

System.IntPtr

HRESULT

HRESULT *

System.Int16 또는 System.IntPtr

SCODE

SCODE *

System.Int32

BSTR

BSTR *

System.String

LPSTR 또는 [string, …] char *

LPSTR *

System.String

LPWSTR 또는 [string, …] wchar_t *

LPWSTR *

System.String

VARIANT

VARIANT *

System.Object

DECIMAL

DECIMAL *

System.Decimal

DATE

DATE *

System.DateTime

GUID

GUID *

System.Guid

CURRENCY

CURRENCY *

System.Decimal

IUnknown *

IUnknown **

System.Object

IDispatch *

IDispatch **

System.Object

SAFEARRAY(type)

SAFEARRAY(type) *

type[]

다음 표에서는 대응하는 요소 형식으로 변환하는 COM 값 형식 및 참조 형식의 목록을 보여 줍니다. 예를 들어, COM coclass는 자동으로 동일한 이름의 관리되는 클래스에 매핑됩니다.

COM 값 형식

COM 참조 형식

요소 형식

Typedef BaseType MyType

ByRef BaseType

BaseType

MyStruct

ByRef VALUETYPE<MyStruct>

valuetype<MyStruct>

MyEnum

ByRef VALUETYPE<MyEnum>

valuetype<MyEnum>

MyInterface *

ByRef CLASS <MyInterface>

Class <MyInterface>

MyCoClass

ByRef CLASS <_Class>

Class <_Class>

참고 항목

개념

COM 호출 가능 래퍼 사용자 지정

런타임 호출 가능 래퍼 사용자 지정

기타 리소스

COM Interop를 사용하여 데이터 마샬링