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 (Значение)
Объединение значений данных— конкретное значение, продиктовано типом свойства. В следующей таблице перечислены для каждого типа свойства, член объединения, который следует использовать, и связанный с ним тип данных.
Тип свойства | Value (Значение) | Тип данных value |
---|---|---|
PT_I2 или PT_SHORT |
Я |
short int |
PT_I4 или PT_LONG |
l |
ДЛИННЫЕ |
- |
Ул |
ULONG |
PT_R4 или PT_FLOAT |
Flt |
float |
PT_R8 или PT_DOUBLE |
Dbl |
double |
PT_BOOLEAN |
B |
unsigned short int |
PT_CURRENCY |
Cur |
CURRENCY |
PT_APPTIME |
В |
double |
PT_SYSTIME |
Метрах |
FILETIME |
PT_STRING8 |
lpszA |
LPSTR |
PT_BINARY |
Бен |
BYTE [массив] |
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 |
Спорыньи |
VOID* |
Замечания
Элемент ulPropTag состоит из двух частей:
Идентификатор в 16 битах высокого порядка.
Тип в нижнем порядке 16 бит.
Идентификатор — это числовое значение в пределах определенного диапазона. MAPI определяет диапазоны для идентификаторов, чтобы описать, для чего используется свойство и кто отвечает за его обслуживание. MAPI определяет ограничения для каждого из тегов свойств, поддерживаемых в файле заголовка Mapitags.h.
Тип указывает формат значения свойства. MAPI определяет константы для каждого из типов свойств, поддерживаемых в файле заголовка Mapidefs.h.
Полный список допустимых диапазонов свойств для идентификаторов и типов свойств см. в приложении Идентификаторы свойств и Типы .
Элемент dwAlignPad используется в качестве заполнений, чтобы обеспечить правильное выравнивание на компьютерах, требующих 8-байтового выравнивания для 8-байтовых значений. Разработчикам, которые пишут код на таких компьютерах, следует использовать подпрограммы выделения памяти, которые выделяют массивы SPropValue на 8-байтовых границах.
Член SPropValue::ul
не имеет соответствующего типа свойства MAPI, так как VT_UI4 OLE не сопоставляется с MAPI. Дополнительные сведения см. в разделах Общие сведения о типе свойства MAPI и Обновление свойств MAPI.
Если тип свойства SPropValue указывает PT_LONG, активным членом объединения UPV обычно l
является , а доступ ul
представляет собой неопределенное поведение по стандарту C.