属性类型
适用于:Outlook 2013 | Outlook 2016
MAPI 支持单值和多值属性。 对于单值属性,该属性有一个基类型的值。 使用多值属性时,基类型的多个值。
下表介绍了 MAPI 支持的单值和多值属性类型。 对于具有相应多值类型的每个单值类型,多值类型将显示在单值类型后面的括号中。
属性类型 | 十六进制值 | 说明 |
---|---|---|
PT_UNSPECIFIED |
0000 |
指示属性类型未知。 此属性类型保留用于接口方法。 |
PT_NULL |
0001 |
指示无属性值。 此属性类型保留用于接口方法,与 OLE 类型VT_NULL相同。 |
PT_I2 (PT_MV_I2) |
0002 |
带符号 16 位 (2 字节) 整数。 此属性类型与 PT_SHORT (PT_MV_SHORT) 相同,OLE 类型VT_I2。 |
PT_I4 (PT_MV_I4) |
0003 |
带符号 32 位 (4 字节) 整数。 此属性类型与 PT_LONG (PT_MV_LONG) 相同,OLE 类型VT_I4。 |
PT_FLOAT (PT_MV_FLOAT) |
0004 |
32 位 (8 字节) 浮点值。 此属性类型与 PT_R4 (PT_MV_R4) 相同,OLE 类型VT_R4。 |
PT_DOUBLE (PT_MV_DOUBLE) |
0005 |
64 位 (8 字节) 浮点值。 此属性类型与 PT_R8 相同,OLE 类型VT_R8和VT_DOUBLE。 |
PT_CURRENCY (PT_MV_CURRENCY ) |
0006 |
64 位 (8 字节) 整数解释为 decimal。 此属性类型与 Microsoft Visual Basic CURRENCY 类型兼容,与 OLE 类型VT_CY相同。 |
PT_APPTIME (PT_MV_APPTIME) |
0007 |
解释为日期和时间的双精度值。 整数部分是日期,分数部分是时间。 此属性类型与 OLE 类型VT_DATE相同,并且与 Microsoft Visual Basic 时间表示形式兼容。 |
PT_ERROR |
000A |
SCODE 值;32 位 (4 字节) 无符号整数。 此属性类型与 OLE 类型VT_ERROR相同。 |
PT_BOOLEAN (PT_MV_12) |
000B |
16 位 (2 字节) 布尔值,其中零等于 false ,非零等于 true。 此属性类型与 OLE 类型VT_BOOL相同。 |
PT_OBJECT |
000D |
指向实现 IUnknown 接口的 对象的指针。 此属性类型类似于多个 OLE 类型,例如VT_UNKNOWN。 |
PT_I8 (PT_MV_I8) |
0014 |
使用 LARGE_INTEGER 结构的有 符号 64 位 (8 字节) 整数。 此属性类型与 PT_I8 相同,OLE 类型VT_I8。 |
PT_STRING8 (PT_MV_STRING8) |
001E |
以 null 结尾的 8 位 (2 字节) 字符串。 此属性类型与 OLE 类型VT_LPSTR相同。 |
PT_TSTRING (PT_MV_TSTRING) |
001F |
以 null 结尾的 16 位 (2 字节) 字符串。 使用 UNICODE 符号编译时,具有此类型的属性类型重置为PT_UNICODE,不使用 UNICODE 符号进行编译时PT_STRING8。 此属性类型与生成的PT_STRING8属性的 OLE 类型VT_LPSTR相同,PT_UNICODE 属性的VT_LPWSTR相同 |
PT_SYSTIME (PT_MV_SYSTIME) |
0040 |
64 位 (8 字节) FILETIME 结构形式的整数数据和时间值。 此属性类型与 OLE 类型VT_FILETIME相同。 |
PT_CLSID (PT_MV_CLSID) |
0048 |
CLSID 结构值。 此属性类型与 OLE 类型VT_CLSID相同。 |
PT_SVREID |
00FB |
大小可变,16 位 (2 字节) COUNT 后跟结构。 |
PT_SRESTRICT |
00FD |
可变大小,表示一个或多个 Restriction 结构的字节数组。 |
PT_ACTIONS |
00FE |
大小可变,16 位 (2 字节) 操作计数 (而不是字节) 后跟许多规则操作结构。 |
PT_BINARY (PT_MV_BINARY) |
0102 |
SBinary 结构值,计数字节数组。 |
注意
若要确定多值属性类型的十六进制值,或PT_MV标志 (0x00001000) 属性类型的十六进制值。 例如,PT_MV_UNICODE的十六进制值0x101F PT_MV_BINARY的十六进制值0x1102。
MAPI 与 [OLE 变体] 共享值类型编号。 但是,并非所有 OLE 类型都为 MAPI 指定。 具体而言,无符号类型(如 VT_UI4)在 MAPI 中没有对应项。 PT_I2/I4/I8 属性值的比较,例如在评估 [限制] (筛选器) 期间,将作为有符号比较执行。