Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Specifies the variant types.
Syntax
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
} ;
Constants
VT_EMPTY Value: 0 Not specified. |
VT_NULL Value: 1 Null. |
VT_I2 Value: 2 A 2-byte integer. |
VT_I4 Value: 3 A 4-byte integer. |
VT_R4 Value: 4 A 4-byte real. |
VT_R8 Value: 5 An 8-byte real. |
VT_CY Value: 6 Currency. |
VT_DATE Value: 7 A date. |
VT_BSTR Value: 8 A string. |
VT_DISPATCH Value: 9 An IDispatch pointer. |
VT_ERROR Value: 10 An SCODE value. |
VT_BOOL Value: 11 A Boolean value. True is -1 and false is 0. |
VT_VARIANT Value: 12 A variant pointer. |
VT_UNKNOWN Value: 13 An IUnknown pointer. |
VT_DECIMAL Value: 14 A 16-byte fixed-pointer value. |
VT_I1 Value: 16 A character. |
VT_UI1 Value: 17 An unsigned character. |
VT_UI2 Value: 18 An unsigned short. |
VT_UI4 Value: 19 An unsigned long. |
VT_I8 Value: 20 A 64-bit integer. |
VT_UI8 Value: 21 A 64-bit unsigned integer. |
VT_INT Value: 22 An integer. |
VT_UINT Value: 23 An unsigned integer. |
VT_VOID Value: 24 A C-style void. |
VT_HRESULT Value: 25 An HRESULT value. |
VT_PTR Value: 26 A pointer type. |
VT_SAFEARRAY Value: 27 A safe array. Use VT_ARRAY in VARIANT. |
VT_CARRAY Value: 28 A C-style array. |
VT_USERDEFINED Value: 29 A user-defined type. |
VT_LPSTR Value: 30 A null-terminated string. |
VT_LPWSTR Value: 31 A wide null-terminated string. |
VT_RECORD Value: 36 A user-defined type. |
VT_INT_PTR Value: 37 A signed machine register size width. |
VT_UINT_PTR Value: 38 An unsigned machine register size width. |
VT_FILETIME Value: 64 A FILETIME value. |
VT_BLOB Value: 65 Length-prefixed bytes. |
VT_STREAM Value: 66 The name of the stream follows. |
VT_STORAGE Value: 67 The name of the storage follows. |
VT_STREAMED_OBJECT Value: 68 The stream contains an object. |
VT_STORED_OBJECT Value: 69 The storage contains an object. |
VT_BLOB_OBJECT Value: 70 The blob contains an object. |
VT_CF Value: 71 A clipboard format. |
VT_CLSID Value: 72 A class ID. |
VT_VERSIONED_STREAM Value: 73 A stream with a GUID version. |
VT_BSTR_BLOB Value: 0xfff Reserved. |
VT_VECTOR Value: 0x1000 A simple counted array. |
VT_ARRAY Value: 0x2000 A SAFEARRAY pointer. |
VT_BYREF Value: 0x4000 A void pointer for local use. |
VT_RESERVED Value: 0x8000 |
VT_ILLEGAL Value: 0xffff |
VT_ILLEGALMASKED Value: 0xfff |
VT_TYPEMASK Value: 0xfff |
Remarks
The following table shows where these values can be used.
Value | VARIANT | TYPEDESC | Property set | Safe array |
---|---|---|---|---|
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 is reserved for system use.
Requirements
Requirement | Value |
---|---|
Header | wtypes.h |