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

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

Синтаксис

typedef enum VARENUM {
  VT_EMPTY,
  VT_NULL,
  VT_I2,
  VT_I4,
  VT_R4,
  VT_R8,
  VT_CY,
  VT_DATE,
  VT_BSTR,
  VT_DISPATCH,
  VT_ERROR,
  VT_BOOL,
  VT_VARIANT,
  VT_UNKNOWN,
  VT_DECIMAL,
  VT_I1,
  VT_UI1,
  VT_UI2,
  VT_UI4,
  VT_I8,
  VT_UI8,
  VT_INT,
  VT_UINT,
  VT_VOID,
  VT_HRESULT,
  VT_PTR,
  VT_SAFEARRAY,
  VT_CARRAY,
  VT_USERDEFINED,
  VT_LPSTR,
  VT_LPWSTR,
  VT_FILETIME,
  VT_BLOB,
  VT_STREAM,
  VT_STORAGE,
  VT_STREAMED_OBJECT,
  VT_STORED_OBJECT,
  VT_BLOB_OBJECT,
  VT_CF,
  VT_CLSID,
  VT_VECTOR,
  VT_ARRAY,
  VT_BYREF,
  VT_RESERVED,
  VT_ILLEGAL,
  VT_ILLEGALMASKED,
  VT_TYPEMASK
} ;

Константы

 
VT_EMPTY
Не указано.
VT_NULL
NULL.
VT_I2
2-байтовое целое число.
VT_I4
4-байтовое целое число.
VT_R4
4-байтовый реал.
VT_R8
8-байтовый реал.
VT_CY
Валюта.
VT_DATE
Дата.
VT_BSTR
Строка.
VT_DISPATCH
Указатель IDispatch .
VT_ERROR
Значение SCODE.
VT_BOOL
Значение типа Boolean. True имеет значение -1, а false — 0.
VT_VARIANT
Вариантный указатель.
VT_UNKNOWN
Указатель IUnknown .
VT_DECIMAL
16-байтовое значение с фиксированным указателем.
VT_I1
Символ.
VT_UI1
Знак без знака.
VT_UI2
Непрописанный короткий.
VT_UI4
Длинная без знака.
VT_I8
64-битное целое число.
VT_UI8
64-разрядное целое число без знака.
VT_INT
Целое число.
VT_UINT
Целое число без знака.
VT_VOID
Пустота в стиле C.
VT_HRESULT
Значение HRESULT.
VT_PTR
Тип указателя.
VT_SAFEARRAY
Безопасный массив. Используйте VT_ARRAY в VARIANT.
VT_CARRAY
Массив В стиле C.
VT_USERDEFINED
Определяемый пользователем тип.
VT_LPSTR
Строка с нулевым символом в конце.
VT_LPWSTR
Широкая строка, заканчивающаяся null.
VT_FILETIME
Значение FILETIME .
VT_BLOB
Байты с префиксом длины.
VT_STREAM
Ниже приведено имя потока.
VT_STORAGE
Ниже приведено имя хранилища.
VT_STREAMED_OBJECT
Поток содержит объект .
VT_STORED_OBJECT
Хранилище содержит объект .
VT_BLOB_OBJECT
Большой двоичный объект содержит объект .
VT_CF
Формат буфера обмена.
VT_CLSID
Идентификатор класса.
VT_VECTOR
Простой подсчитываемый массив.
VT_ARRAY
Указатель SAFEARRAY.
VT_BYREF
Указатель void для локального использования.
VT_RESERVED
Зарезервировано.
VT_ILLEGAL
Недопустимое значение.
VT_ILLEGALMASKED
Недопустимое замаскированное значение.
VT_TYPEMASK
Маска типа.

Комментарии

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

Значение 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_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_ILLEGAL X
VT_INT X X X 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_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_UNKNOWN X X X
VT_USERDEFINED X
VT_VARIANT X X X X
VT_VECTOR X
VT_VOID X

Требования

Требование Значение
Заголовок ks.h