Типы данных COM
В следующей таблице показаны типы данных, используемые в COM-приложении, и соответствующие им встроенные типы значений или классы .NET Framework. Любой тип, не определенный в явном виде в этой таблице, преобразуется в системный тип Int32. Соответствующие типы в Visual Basic 2005, C# и C++, см. в разделе Введение в библиотеку классов .NET Framework.
Тип значений COM |
Ссылочный тип COM |
Системный тип |
---|---|---|
bool |
bool * |
|
char, small |
char *, small * |
|
short |
short * |
|
long, int |
long *, int * |
|
Hyper |
hyper * |
|
unsigned char, byte |
unsigned char *, byte * |
|
wchar_t, unsigned short |
wchar_t *, unsigned short * |
|
unsigned long, unsigned int |
unsigned long *, unsigned int * |
|
unsigned hyper |
unsigned hyper * |
|
float |
float * |
|
double |
double * |
|
VARIANT_BOOL |
VARIANT_BOOL * |
|
void * |
void ** |
|
HRESULT |
HRESULT * |
System.Int16 или System.IntPtr |
SCODE |
SCODE * |
System.Int32 |
BSTR |
BSTR * |
|
LPSTR или [string, …] char * |
LPSTR * |
System.String |
LPWSTR или [string, …] wchar_t * |
LPWSTR * |
System.String |
VARIANT |
VARIANT * |
|
DECIMAL |
DECIMAL * |
|
DATE |
DATE * |
|
GUID |
GUID * |
|
CURRENCY |
CURRENCY * |
|
IUnknown * |
IUnknown ** |
System.Object |
IDispatch * |
IDispatch ** |
System.Object |
SAFEARRAY(type) |
SAFEARRAY(type) * |
type[] |
В следующей таблице приведен список типов значений и ссылочных типов модели COM, преобразуемых в соответствующие типы элементов. Например, компонентный COM-класс автоматически отображается в управляемый класс с тем же именем.
Тип значений COM |
Ссылочный тип COM |
Тип элемента |
---|---|---|
Typedef BaseType МойТип |
ByRef BaseType |
BaseType |
MyStruct |
ByRef VALUETYPE<МояСтруктура> |
valuetype<МояСтруктура> |
МоеПеречисление |
ByRef VALUETYPE<МоеПеречисление> |
valuetype<МоеПеречисление> |
MyInterface * |
ByRef CLASS <MyInterface> |
Class <МойИнтерфейс> |
МойКомпКласс |
ByRef CLASS <_Класс> |
Class <_Класс> |
См. также
Основные понятия
Настройка вызываемых оболочек COM
Настройка вызываемых оболочек времени выполнения