153 lines
3.1 KiB
C
153 lines
3.1 KiB
C
/***********************************************************************
|
|
*
|
|
* _ENTRYID.H
|
|
*
|
|
* Header file describing internal structure of EntryIDs returned
|
|
* by this provider.
|
|
*
|
|
* Defines structure of records in .FAB files.
|
|
*
|
|
* Copyright 1992, 1993 Microsoft Corporation. All Rights Reserved.
|
|
*
|
|
***********************************************************************/
|
|
|
|
|
|
/*
|
|
* Defines of various entryid types
|
|
*/
|
|
#define MAWF_DIRECTORY 0x00000000
|
|
#define MAWF_USER 0x00000001
|
|
#define MAWF_UNKNOWN 0x00000002
|
|
#define MAWF_ONEOFF 0x00000003
|
|
|
|
/*
|
|
* The version of this ABPs entryids
|
|
*/
|
|
#define MAWF_VERSION 0x000000001
|
|
|
|
/*
|
|
* The FAX Address Book Provider MAPIUID
|
|
*
|
|
* This MAPIUID must be unique (see the Service Provider Writer's Guide on
|
|
* Constructing Entry IDs)
|
|
*/
|
|
/***** the Fax AB uid is in ..\..\h\entryid.h ******/
|
|
|
|
/*
|
|
* Directory entry id structure
|
|
*
|
|
* This entryid is permanent.
|
|
*/
|
|
typedef struct _dir_entryid
|
|
{
|
|
|
|
BYTE abFlags[4];
|
|
MAPIUID muid;
|
|
ULONG ulVersion;
|
|
ULONG ulType;
|
|
MAPIUID muidID;
|
|
|
|
} DIR_ENTRYID, *LPDIR_ENTRYID;
|
|
|
|
#define CBDIR_ENTRYID sizeof(DIR_ENTRYID)
|
|
|
|
/*
|
|
* Browse record
|
|
*
|
|
* The .FAB files are made up of the following records.
|
|
*/
|
|
|
|
#define DISPLAY_NAME_SIZE 30 // Size of display name field in record
|
|
#define FAX_NUMBER_SIZE 50 // Size of Fax number field in record
|
|
#define COUNTRY_ID_SIZE 5 // Size of Fax machine field in record
|
|
|
|
#pragma pack(4)
|
|
typedef struct _ABCREC
|
|
{
|
|
|
|
TCHAR rgchDisplayName[DISPLAY_NAME_SIZE + 1];
|
|
TCHAR rgchEmailAddress[FAX_NUMBER_SIZE + 1];
|
|
TCHAR rgchCountryID[COUNTRY_ID_SIZE + 1];
|
|
|
|
} ABCREC, *LPABCREC;
|
|
#pragma pack()
|
|
|
|
#define CBABCREC sizeof(ABCREC)
|
|
|
|
/*
|
|
* Mail user entry id structure
|
|
*
|
|
* This entryid is permanent.
|
|
*/
|
|
#pragma pack(4)
|
|
typedef struct _usr_entryid
|
|
{
|
|
|
|
BYTE abFlags[4];
|
|
MAPIUID muid;
|
|
ULONG ulVersion;
|
|
ULONG ulType;
|
|
ABCREC abcrec;
|
|
|
|
} USR_ENTRYID, *LPUSR_ENTRYID;
|
|
#pragma pack()
|
|
|
|
#define CBUSR_ENTRYID sizeof(USR_ENTRYID)
|
|
|
|
|
|
/*
|
|
* One-Off entry ID
|
|
*/
|
|
/* #pragma pack(4)
|
|
typedef struct _ONEOFFREC
|
|
{
|
|
|
|
char displayName[DISPLAY_NAME_SIZE + 1];
|
|
char emailAddress[FAX_NUMBER_SIZE + 1];
|
|
char rgchCountryID[COUNTRY_ID_SIZE + 1];
|
|
|
|
} ONEOFFREC, *LPONEOFFREC;
|
|
*/
|
|
#pragma pack()
|
|
|
|
#define CBONEOFFREC sizeof(ONEOFFREC)
|
|
|
|
/*
|
|
* One-Off entry ID structure
|
|
*
|
|
* This entryid is permanent.
|
|
*/
|
|
#pragma pack(4)
|
|
typedef struct _oneoff_entryid
|
|
{
|
|
|
|
BYTE abFlags[4];
|
|
MAPIUID muid;
|
|
ULONG ulVersion;
|
|
ULONG ulType;
|
|
// ONEOFFREC oneOffRec;
|
|
|
|
} OOUSER_ENTRYID, *LPOOUSER_ENTRYID;
|
|
#pragma pack()
|
|
|
|
#define CBOOUSER_ENTRYID sizeof(OOUSER_ENTRYID)
|
|
|
|
/*
|
|
* Template ID entry ID structure
|
|
*
|
|
* This entryid is permanent.
|
|
*/
|
|
#pragma pack(4)
|
|
typedef struct _tid_entryid
|
|
{
|
|
|
|
BYTE abFlags[4];
|
|
MAPIUID muid;
|
|
ULONG ulVersion;
|
|
ULONG ulType;
|
|
|
|
} TEMPLATEID_ENTRYID, *LPTEMPLATEID_ENTRYID;
|
|
#pragma pack()
|
|
|
|
#define CBTEMPLATEID_ENTRYID sizeof(TEMPLATEID_ENTRYID)
|