home *** CD-ROM | disk | FTP | other *** search
- /*
- ** --_entryid.h----------------------------------------------------------------
- **
- ** Header file describing internal structure of EntryIDs returned
- ** by Exchange Address Book provider.
- **
- **
- ** Copyright (c) Microsoft Corp. 1986-1996. All Rights Reserved.
- **
- ** ----------------------------------------------------------------------------
- */
-
- #ifndef _ENTRYID_
- #pragma option push -b -a8 -pc -A- /*P_O_Push*/
- #define _ENTRYID_
-
- /*
- * The version of this ABPs entryids
- */
- #define EMS_VERSION 0x000000001
-
- /*
- * The version of the entryids supported by the CreateEntry method in this
- * ABP.
- */
- #define NEW_OBJ_EID_VERSION 0x00000002
-
- /*
- * Valid values for the entry id's Type field are Mapi Display Types, plus:
- */
- #define AB_DT_CONTAINER 0x000000100
- #define AB_DT_TEMPLATE 0x000000101
- #define AB_DT_OOUSER 0x000000102
- #define AB_DT_SEARCH 0x000000200
-
- /*
- * The EMS ABPs MAPIUID
- *
- * This MAPIUID must be unique (see the Service Provider Writer's Guide on
- * Constructing Entry IDs)
- */
- #define MUIDEMSAB {0xDC, 0xA7, 0x40, 0xC8, 0xC0, 0x42, 0x10, 0x1A, \
- 0xB4, 0xB9, 0x08, 0x00, 0x2B, 0x2F, 0xE1, 0x82}
-
- /*
- * Directory entry id structure
- *
- * This entryid is permanent.
- */
- #ifdef TEMPLATE_LCID
- typedef UNALIGNED struct _dir_entryid
- #else
- typedef struct _dir_entryid
- #endif
- {
- BYTE abFlags[4];
- MAPIUID muid;
- ULONG ulVersion;
- ULONG ulType;
- } DIR_ENTRYID, FAR * LPDIR_ENTRYID;
-
- #define CBDIR_ENTRYID sizeof(DIR_ENTRYID)
-
- /*
- * Mail user entry id structure
- *
- * This entryid is ephemeral.
- */
- #ifdef TEMPLATE_LCID
- typedef UNALIGNED struct _usr_entryid
- #else
- typedef struct _usr_entryid
- #endif
- {
- BYTE abFlags[4];
- MAPIUID muid;
- ULONG ulVersion;
- ULONG ulType;
- DWORD dwEph;
- } USR_ENTRYID, FAR * LPUSR_ENTRYID;
-
- /*
- * This entryid is permanent.
- */
- /* turn off the warning for the unsized array */
- #pragma warning (disable:4200)
- #ifdef TEMPLATE_LCID
- typedef UNALIGNED struct _usr_permid
- #else
- typedef struct _usr_permid
- #endif
- {
- BYTE abFlags[4];
- MAPIUID muid;
- ULONG ulVersion;
- ULONG ulType;
- char szAddr[];
- } USR_PERMID, FAR * LPUSR_PERMID;
- #pragma warning (default:4200)
-
- #define CBUSR_ENTRYID sizeof(USR_ENTRYID)
- #define CBUSR_PERMID sizeof(USR_PERMID)
-
- #define EPHEMERAL (UCHAR)(~( MAPI_NOTRECIP \
- | MAPI_THISSESSION \
- | MAPI_NOW \
- | MAPI_NOTRESERVED))
-
-
- #pragma option pop /*P_O_Pop*/
- #endif /* _ENTRYID_ */
-
-