You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
213 lines
4.4 KiB
213 lines
4.4 KiB
/*
|
|
* GLOBALS.C
|
|
*
|
|
* Global constant structures
|
|
*
|
|
*/
|
|
|
|
#define _GLOBALS_C
|
|
#include "_apipch.h"
|
|
|
|
// Columns of the Root Contents Table
|
|
//
|
|
const SizedSPropTagArray(ircMax, ITableColumnsRoot) = {
|
|
ircMax, // count of entries
|
|
{
|
|
PR_DISPLAY_NAME,
|
|
PR_DISPLAY_TYPE,
|
|
PR_ENTRYID,
|
|
PR_INSTANCE_KEY,
|
|
PR_OBJECT_TYPE,
|
|
PR_RECORD_KEY,
|
|
PR_ROWID,
|
|
PR_DEPTH,
|
|
PR_CONTAINER_FLAGS,
|
|
PR_AB_PROVIDER_ID,
|
|
PR_WAB_LDAP_SERVER,
|
|
PR_WAB_RESOLVE_FLAG,
|
|
}
|
|
|
|
|
|
};
|
|
|
|
//
|
|
// Default set of properties to return from a ResolveNames.
|
|
// May be overridden by passing in lptagaColSet to ResolveNames.
|
|
//
|
|
const SizedSPropTagArray(irdMax, ptaResolveDefaults)=
|
|
{
|
|
irdMax,
|
|
{
|
|
PR_ADDRTYPE,
|
|
PR_DISPLAY_NAME,
|
|
PR_EMAIL_ADDRESS,
|
|
PR_ENTRYID,
|
|
PR_OBJECT_TYPE,
|
|
PR_RECORD_KEY,
|
|
PR_SEARCH_KEY,
|
|
PR_SURNAME,
|
|
PR_GIVEN_NAME,
|
|
PR_INSTANCE_KEY,
|
|
PR_SEND_INTERNET_ENCODING
|
|
}
|
|
};
|
|
|
|
// default set of regular table columns
|
|
//
|
|
const SizedSPropTagArray(itcMax, ITableColumns) = {
|
|
itcMax, // count of entries
|
|
{
|
|
PR_ADDRTYPE,
|
|
PR_DISPLAY_NAME,
|
|
PR_DISPLAY_TYPE,
|
|
PR_ENTRYID,
|
|
PR_INSTANCE_KEY,
|
|
PR_OBJECT_TYPE,
|
|
PR_EMAIL_ADDRESS,
|
|
PR_RECORD_KEY,
|
|
PR_NICKNAME,
|
|
//PR_WAB_THISISME
|
|
}
|
|
};
|
|
|
|
// [PaulHi] 2/25/99 ANSI version of ITableColumns
|
|
const SizedSPropTagArray(itcMax, ITableColumns_A) =
|
|
{
|
|
itcMax,
|
|
{
|
|
PR_ADDRTYPE_A,
|
|
PR_DISPLAY_NAME_A,
|
|
PR_DISPLAY_TYPE,
|
|
PR_ENTRYID,
|
|
PR_INSTANCE_KEY,
|
|
PR_OBJECT_TYPE,
|
|
PR_EMAIL_ADDRESS_A,
|
|
PR_RECORD_KEY,
|
|
PR_NICKNAME_A,
|
|
//PR_WAB_THISISME
|
|
}
|
|
};
|
|
|
|
|
|
const SizedSPropTagArray(iwdesMax, tagaDLEntriesProp) =
|
|
{
|
|
iwdesMax,
|
|
{
|
|
PR_WAB_DL_ENTRIES,
|
|
}
|
|
};
|
|
|
|
|
|
const SizedSPropTagArray(ildapcMax, ptaLDAPCont) =
|
|
{
|
|
ildapcMax,
|
|
{
|
|
PR_WAB_LDAP_SERVER
|
|
}
|
|
};
|
|
|
|
|
|
//
|
|
// Properties to get for each container in a Resolve
|
|
//
|
|
const SizedSPropTagArray(irnMax, irnColumns) =
|
|
{
|
|
irnMax,
|
|
{
|
|
PR_OBJECT_TYPE,
|
|
PR_WAB_RESOLVE_FLAG,
|
|
PR_ENTRYID,
|
|
PR_DISPLAY_NAME,
|
|
}
|
|
};
|
|
|
|
//
|
|
// container default properties
|
|
// Put essential props first
|
|
//
|
|
const SizedSPropTagArray(ivMax, tagaValidate) = {
|
|
ivMax,
|
|
{
|
|
PR_DISPLAY_NAME,
|
|
PR_SURNAME,
|
|
PR_GIVEN_NAME,
|
|
PR_OBJECT_TYPE,
|
|
PR_EMAIL_ADDRESS,
|
|
PR_ADDRTYPE,
|
|
PR_CONTACT_EMAIL_ADDRESSES,
|
|
PR_CONTACT_ADDRTYPES,
|
|
PR_MIDDLE_NAME,
|
|
PR_COMPANY_NAME,
|
|
PR_NICKNAME
|
|
}
|
|
};
|
|
|
|
// Default creation templates for the WAB
|
|
//
|
|
const SizedSPropTagArray(icrMax, ptaCreate)=
|
|
{
|
|
icrMax,
|
|
{
|
|
PR_DEF_CREATE_MAILUSER,
|
|
PR_DEF_CREATE_DL,
|
|
}
|
|
};
|
|
|
|
const SizedSPropTagArray(ieidMax, ptaEid)=
|
|
{
|
|
ieidMax,
|
|
{
|
|
PR_DISPLAY_NAME,
|
|
PR_ENTRYID,
|
|
}
|
|
};
|
|
|
|
|
|
|
|
//
|
|
// IMPORTANT NOTE: If you change this array, you must change
|
|
// _IndexType in mpswab.h to match!
|
|
//
|
|
// This is the set of Indexes from the WAB Data store and is closely
|
|
// tied to the physical layout of data in the WAB store - therefore
|
|
// *Do NOT* modify this array
|
|
//
|
|
const ULONG rgIndexArray[indexMax] =
|
|
{
|
|
PR_ENTRYID,
|
|
PR_DISPLAY_NAME,
|
|
PR_SURNAME,
|
|
PR_GIVEN_NAME,
|
|
PR_EMAIL_ADDRESS,
|
|
PR_NICKNAME,
|
|
};
|
|
|
|
|
|
//
|
|
// IMPORTANT NOTE: If you change this, you must change _AddrBookColumns in uimisc.h!
|
|
//
|
|
const int lprgAddrBookColHeaderIDs[NUM_COLUMNS] =
|
|
{
|
|
idsColDisplayName,
|
|
idsColEmailAddress,
|
|
idsColOfficePhone,
|
|
idsColHomePhone
|
|
};
|
|
|
|
|
|
// External memory allocators (passed in on WABOpenEx)
|
|
int g_nExtMemAllocCount = 0;
|
|
ALLOCATEBUFFER * lpfnAllocateBufferExternal = NULL;
|
|
ALLOCATEMORE * lpfnAllocateMoreExternal = NULL;
|
|
FREEBUFFER * lpfnFreeBufferExternal = NULL;
|
|
LPUNKNOWN pmsessOutlookWabSPI = NULL;
|
|
|
|
LPWABOPENSTORAGEPROVIDER lpfnWABOpenStorageProvider = NULL;
|
|
|
|
// for registry property tags
|
|
LPTSTR szPropTag1 = TEXT("PropTag1");
|
|
LPTSTR szPropTag2 = TEXT("PropTag2");
|
|
|
|
// registry key constants
|
|
LPCTSTR lpNewWABRegKey = TEXT("Software\\Microsoft\\WAB\\WAB4");
|
|
LPCTSTR lpRegUseOutlookVal = TEXT("UseOutlook");
|