SPropValue
适用于:Outlook 2013 | Outlook 2016
描述 MAPI 属性。
属性 | 值 |
---|---|
标头文件: |
Mapidefs.h |
相关宏: |
CHANGE_PROP_TYPE、 MVI_PROP、 PROP_ID、 PROP_TAG、 PROP_TYPE |
typedef struct _SPropValue
{
ULONG ulPropTag;
ULONG dwAlignPad;
union _PV Value;
} SPropValue, FAR *LPSPropValue;
Members
ulPropTag
属性的属性标记。 属性标记是 32 位无符号整数,由属性在高序 16 位中的唯一标识符和低序 16 位的属性类型组成。
dwAlignPad
为 MAPI 保留;请勿使用。
值
数据值的并集,即属性类型指定的特定值。 下表列出了每种属性类型、应使用的联合的成员及其关联的数据类型。
属性类型 | 值 | Value 的数据类型 |
---|---|---|
PT_I2或PT_SHORT |
我 |
short int |
PT_I4或PT_LONG |
l |
长 |
- |
Ul |
ULONG |
PT_R4或PT_FLOAT |
外语 |
float |
PT_R8或PT_DOUBLE |
dbl |
double |
PT_BOOLEAN |
B |
unsigned short int |
PT_CURRENCY |
当前 |
CURRENCY |
PT_APPTIME |
在 |
double |
PT_SYSTIME |
英尺 |
FILETIME |
PT_STRING8 |
lpszA |
LPSTR |
PT_BINARY |
站 |
BYTE [array] |
PT_UNICODE |
lpszW |
LPWSTR |
PT_CLSID |
lpguid |
LPGUID |
PT_I8或PT_LONGLONG |
李 |
LARGE_INTEGER |
PT_MV_I2 |
MVi |
SShortArray |
PT_MV_LONG |
MVI |
SLongArray |
PT_MV_R4 |
MVflt |
SRealArray |
PT_MV_DOUBLE |
MVdbl |
SDoubleArray |
PT_MV_CURRENCY |
MVcur |
SCurrencyArray |
PT_MV_APPTIME |
MVat |
SAppTimeArray |
PT_MV_SYSTIME |
MVft |
SDateTimeArray |
PT_MV_BINARY |
MVbin |
SBinaryArray |
PT_MV_STRING8 |
MVszA |
SLPSTRArray |
PT_MV_UNICODE |
MVszW |
SWStringArray |
PT_MV_CLSID |
MVguid |
SGuidArray |
PT_MV_I8 |
MVli |
SLargeIntegerArray |
PT_ERROR |
err |
SCODE |
PT_NULL或PT_OBJECT |
x |
长 |
PT_PTR或PT_FILE_HANDLE |
lpv |
无效* |
备注
ulPropTag 成员由两部分组成:
高序 16 位中的标识符。
低序 16 位中的类型。
标识符是特定范围内的数值。 MAPI 定义标识符的范围,用于描述属性的用途以及负责维护该属性的人员。 MAPI 为 Mapitags.h 头文件中支持的每个属性标记定义约束。
类型指示属性值的格式。 MAPI 为 Mapidefs.h 头文件中支持的每个属性类型定义常量。
有关标识符和属性类型的有效属性范围的完整列表,请参阅 属性标识符和类型 附录。
dwAlignPad 成员用作填充,以确保在需要对 8 字节值进行 8 字节对齐的计算机上正确对齐。 在此类计算机上编写代码的开发人员应使用内存分配例程,这些例程在 8 字节边界上分配 SPropValue 数组。
成员 SPropValue::ul
没有相应的 MAPI 属性类型,因为 OLE 的VT_UI4未映射到 MAPI。 有关详细信息,请参阅 MAPI 属性类型概述 和 更新 MAPI 属性。
当 SPropValue 的属性类型指示PT_LONG时,UPV 联合的活动成员通常 l
为 ,并且根据 C 标准,访问 ul
构成未定义的行为。