Поделиться через


Перечисление VARENUM (wtypes.h)

Указывает типы вариантов.

Синтаксис

typedef enum VARENUM {
  VT_EMPTY = 0,
  VT_NULL = 1,
  VT_I2 = 2,
  VT_I4 = 3,
  VT_R4 = 4,
  VT_R8 = 5,
  VT_CY = 6,
  VT_DATE = 7,
  VT_BSTR = 8,
  VT_DISPATCH = 9,
  VT_ERROR = 10,
  VT_BOOL = 11,
  VT_VARIANT = 12,
  VT_UNKNOWN = 13,
  VT_DECIMAL = 14,
  VT_I1 = 16,
  VT_UI1 = 17,
  VT_UI2 = 18,
  VT_UI4 = 19,
  VT_I8 = 20,
  VT_UI8 = 21,
  VT_INT = 22,
  VT_UINT = 23,
  VT_VOID = 24,
  VT_HRESULT = 25,
  VT_PTR = 26,
  VT_SAFEARRAY = 27,
  VT_CARRAY = 28,
  VT_USERDEFINED = 29,
  VT_LPSTR = 30,
  VT_LPWSTR = 31,
  VT_RECORD = 36,
  VT_INT_PTR = 37,
  VT_UINT_PTR = 38,
  VT_FILETIME = 64,
  VT_BLOB = 65,
  VT_STREAM = 66,
  VT_STORAGE = 67,
  VT_STREAMED_OBJECT = 68,
  VT_STORED_OBJECT = 69,
  VT_BLOB_OBJECT = 70,
  VT_CF = 71,
  VT_CLSID = 72,
  VT_VERSIONED_STREAM = 73,
  VT_BSTR_BLOB = 0xfff,
  VT_VECTOR = 0x1000,
  VT_ARRAY = 0x2000,
  VT_BYREF = 0x4000,
  VT_RESERVED = 0x8000,
  VT_ILLEGAL = 0xffff,
  VT_ILLEGALMASKED = 0xfff,
  VT_TYPEMASK = 0xfff
} ;

Константы

 
VT_EMPTY
Значение: 0
Не указано.
VT_NULL
Значение: 1
NULL.
VT_I2
Значение: 2
2-байтовое целое число.
VT_I4
Значение: 3
4-байтовое целое число.
VT_R4
Значение: 4
4-байтовый реал.
VT_R8
Значение: 5
8-байтовый реал.
VT_CY
Значение: 6
Валюта.
VT_DATE
Значение: 7
Дата.
VT_BSTR
Значение: 8
Строка.
VT_DISPATCH
Значение: 9
Указатель IDispatch .
VT_ERROR
Значение: 10
Значение SCODE.
VT_BOOL
Значение: 11
Значение типа Boolean. True имеет значение -1, а false — 0.
VT_VARIANT
Значение: 12
Вариантный указатель.
VT_UNKNOWN
Значение: 13
Указатель IUnknown .
VT_DECIMAL
Значение: 14
16-байтовое значение с фиксированным указателем.
VT_I1
Значение: 16
Символ.
VT_UI1
Значение: 17
Знак без знака.
VT_UI2
Значение: 18
Непрописанный короткий.
VT_UI4
Значение: 19
Длинная без знака.
VT_I8
Значение: 20
64-битное целое число.
VT_UI8
Значение: 21
64-разрядное целое число без знака.
VT_INT
Значение: 22
Целое число.
VT_UINT
Значение: 23
Целое число без знака.
VT_VOID
Значение: 24
Пустота в стиле C.
VT_HRESULT
Значение: 25
Значение HRESULT.
VT_PTR
Значение: 26
Тип указателя.
VT_SAFEARRAY
Значение: 27
Безопасный массив. Используйте VT_ARRAY в VARIANT.
VT_CARRAY
Значение: 28
Массив В стиле C.
VT_USERDEFINED
Значение: 29
Определяемый пользователем тип.
VT_LPSTR
Значение: 30
Строка с нулевым символом в конце.
VT_LPWSTR
Значение: 31
Широкая строка, заканчивающаяся null.
VT_RECORD
Значение: 36
Определяемый пользователем тип.
VT_INT_PTR
Значение: 37
Ширина регистра подписанного компьютера.
VT_UINT_PTR
Значение: 38
Ширина регистра неподписаемого компьютера.
VT_FILETIME
Значение: 64
Значение FILETIME .
VT_BLOB
Значение: 65
Байты с префиксом длины.
VT_STREAM
Значение: 66
Ниже приведено имя потока.
VT_STORAGE
Значение: 67
Ниже приведено имя хранилища.
VT_STREAMED_OBJECT
Значение: 68
Поток содержит объект .
VT_STORED_OBJECT
Значение: 69
Хранилище содержит объект .
VT_BLOB_OBJECT
Значение: 70
Большой двоичный объект содержит объект .
VT_CF
Значение: 71
Формат буфера обмена.
VT_CLSID
Значение: 72
Идентификатор класса.
VT_VERSIONED_STREAM
Значение: 73
Поток с версией GUID.
VT_BSTR_BLOB
Значение: 0xfff
Зарезервировано.
VT_VECTOR
Значение: 0x1000
Простой подсчитываемый массив.
VT_ARRAY
Значение: 0x2000
Указатель SAFEARRAY.
VT_BYREF
Значение: 0x4000
Указатель void для локального использования.
VT_RESERVED
Значение: 0x8000
VT_ILLEGAL
Значение: 0xffff
VT_ILLEGALMASKED
Значение: 0xfff
VT_TYPEMASK
Значение: 0xfff

Комментарии

В следующей таблице показано, где можно использовать эти значения.

Значение VARIANT TYPEDESC Набор свойств Безопасный массив
VT_ARRAY X
VT_BLOB X
VT_BLOB_OBJECT X
VT_BOOL X X X X
VT_BSTR X X X X
VT_BSTR_BLOB
VT_BYREF X
VT_CARRAY X
VT_CF X
VT_CLSID X
VT_CY X X X X
VT_DATE X X X X
VT_DECIMAL X X X
VT_DISPATCH X X X
VT_EMPTY X X
VT_ERROR X X X X
VT_FILETIME X
VT_HRESULT X
VT_I1 X X X X
VT_I2 X X X X
VT_I4 X X X X
VT_I8 X X
VT_INT X X X X
VT_INT_PTR X
VT_LPSTR X X
VT_LPWSTR X X
VT_NULL X X
VT_PTR X
VT_R4 X X X X
VT_R8 X X X X
VT_RECORD X X X
VT_SAFEARRAY X
VT_STORAGE X
VT_STORED_OBJECT X
VT_STREAM X
VT_STREAMED_OBJECT X
VT_UI1 X X X X
VT_UI2 X X X X
VT_UI4 X X X X
VT_UI8 X X
VT_UINT X X X
VT_UINT_PTR X
VT_UNKNOWN X X X
VT_USERDEFINED X
VT_VARIANT X X X X
VT_VECTOR X
VT_VERSIONED_STREAM X
VT_VOID X
 

VT_BSTR_BLOB зарезервировано для использования системой.

Требования

   
Верхняя часть wtypes.h