FLATENTRYLIST 

The FLATENTRYLIST structure contains an array of FLATENTRYK45YY structures. 

Quick Info

Header file:

MAPIDEFS.H

Related macros:

CbFLATENTRYLIST1D4MZHA
CbNewFLATENTRYLISTL90O49

 

typedef struct

     ULONG     cEntries;

     ULONG     cbEntries;

     BYTE      abEntries[MAPI_DIM];

} FLATENTRYLIST, FAR *LPFLATENTRYLIST;

 

Members

cEntries

Count of FLATENTRYK45YY structures in the array described by the abEntries member.

cbEntries

Count of bytes occupied by the entire array described by abEntries.

abEntries

Byte array containing the number of FLATENTRY structures in the cEntries member, arranged end to end.

 

Remarks

In the abEntries array, each FLATENTRY structure is aligned on a naturally aligned boundary. Extra bytes are included as padding to ensure natural alignment between any two FLATENTRY structures. The first FLATENTRY structure in the array is always aligned correctly because the offset of the abEntries member is 8. To compute the offset of the next structure, use the size of the first entry rounded up to the next multiple of 4. Use the CbFLATENTRY macro to compute the size of a FLATENTRY structure.

For example, the second FLATENTRY structure starts at an offset made up of the offset of the first entry plus the length of the first entry rounded to the next four bytes. The length of the first entry is the length of its cb member plus the length of its abEntry member.

The following code sample indicates how to compute offsets in a FLATENTRYLIST structure. Assume that lpFlatEntry is a pointer to the first structure in the list.

(offsetof(lpFlatEntry->ab)             // for example, 4

   + lpFlatEntry->cb                               // size of lpFlatEntry->ab

   + 4) & ~3                                             // round to next 4 byte boundary

See Also

FLATENTRY, PR_REPLY_RECIPIENT_ENTRIES