VARIANT 表

TYPE LIBRARY


* VARENUM *

Name Value  
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 エラー (Optional も含む)
VT_BOOL 11 真偽値
VT_VARIANT 12 VARIANT 型
VT_UNKNOWN 13 IUnknown インターフェイス
VT_DECIMAL 14 12バイト数値 (符号付)
VT_I1 16 1バイト整数 (符号付)
VT_UI1 17 1バイト整数 (符号なし)
VT_UI2 18 2バイト整数 (符号なし)
VT_UI4 19 4バイト整数 (符号なし)
VT_I8 20 8バイト整数 (符号付)
VT_UI8 21 8バイト整数 (符号なし)
VT_INT 22 int 型
VT_UINT 23 unsigned int 型
VT_VOID 24 アドレス (void 型)
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_FILETIME 64  
VT_BLOB 65  
VT_STREAM 66  
VT_STORAGE 67  
VT_STREAM_OBJECT 68  
VT_STORED_OBJECT 69  
VT_BLOB_OBJECT 70  
VT_CF 71  
VT_CLSID 72  
VT_BSTR_BLOB 4095 [0x0FFF]  
VT_VECTOR 4096 [0x1000]  
VT_ARRAY 8192 [0x2000]  
VT_BYREF 16384 [0x4000]  
VT_RESERVED 32768 [0x8000]  
VT_ILLEGAL 65535 [0xFFFF]  
VT_ILLEGALMASKED 4095 [0x0FFF]  
VT_TYPEMASK 4095 [0x0FFF]  

 

* 格納される要素と C++ での型 *

Name Attribute C++
VT_ARRAY | * parray SAFEARRAY*
VT_I1 cVal char
VT_I2 iVal short
VT_I4 lVal long
VT_R4 fltVal float
VT_R8 dblVal double
VT_UI1 bVal Byte
VT_UI2 uiVal unsigned short
VT_UI4 ulVal unsigned long
VT_INT intVal int
VT_UINT uintVal unsigned int
VT_CY cyVal CY
VT_DATE date DATE
VT_BSTR bstrVal BSTR
VT_DISPATCH pdispVal IDispatch*
VT_BOOL boolVal VARIANT_BOOL
VT_UNKNOWN punkVal IUnknown*
VT_BYREF | VT_ARRAY | * pparray SAFEARRAY**
VT_BYREF | VT_I1 pcVal char*
VT_BYREF | VT_I2 piVal short*
VT_BYREF | VT_I4 plVal long*
VT_BYREF | VT_R4 pfltVal float*
VT_BYREF | VT_R8 pdblVal double*
VT_BYREF | VT_UI1 pbVal Byte*
VT_BYREF | VT_UI2 puiVal unsigned short*
VT_BYREF | VT_UI4 pulVal unsigned long*
VT_BYREF | VT_INT pintVal int*
VT_BYREF | VT_UINT puintVal unsigned int*
VT_BYREF | VT_CY pcyVal CY*
VT_BYREF | VT_DATE pdate DATE*
VT_BYREF | VT_BSTR pbstrVal BSTR*
VT_BYREF | VT_DISPATCH ppdispVal IDispatch**
VT_BYREF | VT_BOOL pboolVal VARIANT_BOOL*
VT_BYREF | VT_VARIANT FpvarVal LPVARIANT
VT_BYREF | VT_UNKNOWN ppunkVal IUnknown**
VT_BYREF | VT_DECIMAL pdecVal DECIMAL*