FLATENTRYLIST
Область применения: Outlook 2013 | Outlook 2016
Содержит массив структур FLATENTRY .
Информация | Value (Значение) |
---|---|
Файл заголовка: |
Mapidefs.h |
Связанные макросы: |
CbFLATENTRYLIST, CbNewFLATENTRYLIST |
typedef struct
{
ULONG cEntries;
ULONG cbEntries;
BYTE abEntries[MAPI_DIM];
} FLATENTRYLIST, FAR *LPFLATENTRYLIST;
Members
cEntries
Количество структур FLATENTRY в массиве, описанном элементом abEntries .
cbEntries
Количество байтов в массиве, описанном abEntries.
abEntries
Массив байтов, содержащий одну или несколько структур FLATENTRY , упорядоченных до конца.
Замечания
В массиве abEntries каждая структура FLATENTRY выравнивается по естественной границе. Дополнительные байты включаются в качестве заполнений, чтобы обеспечить естественное выравнивание между любыми двумя структурами FLATENTRY . Первая структура FLATENTRY в массиве всегда выравнивается правильно, так как смещение элемента abEntries равно 8. Чтобы вычислить смещение следующей структуры, используйте размер первой записи, округленной до следующего кратного 4. Используйте макрос CbFLATENTRY для вычисления размера структуры FLATENTRY .
Например, вторая структура FLATENTRY начинается со смещения, состоящего из смещения первой записи плюс длина первой записи, округленной до следующих четырех байтов. Длина первой записи — это длина ее члена cb плюс длина его элемента abEntry .
В следующем примере кода показано, как вычислять смещения в структуре FLATENTRYLIST . Предположим, что lpFlatEntry является указателем на первую структуру в списке.
(offsetof(lpFlatEntry->ab) // for example, 4
+ lpFlatEntry->cb // size of lpFlatEntry->ab
+ 4) & ~3 // round to next 4 byte boundary