PRB: IExchangeManageStore::GetMailboxTable Doesn't Return PR_ENTRYID (216420)



The information in this article applies to:

  • Microsoft Exchange Development Kit (EDK) 5.0
  • Microsoft Exchange Development Kit (EDK) 5.5

This article was previously published under Q216420

SYMPTOMS

You cannot uniquely identify a mailbox across space and time when calling IExchangeManageStore::GetMailboxTable.

CAUSE

IExchangeManageStore::GetMailboxTable returns the following properties:
  • PR_DISPLAY_NAME
  • PR_EMAIL_ADDRESS
  • PR_LOCALE_ID
  • PR_MESSAGE_SIZE
  • PR_MESSAGE_SIZE_EXTENDED
  • PR_CONTENT_COUNT
  • PR_ASSOC_CONTENT_COUNT
  • PR_NT_USER_NAME
  • PR_LAST_LOGON_TIME
  • PR_LAST_LOGOFF_TIME
  • PR_STORAGE_LIMIT_INFORMATION
  • PR_INSTANCE_KEY
Of the above properties, the one that most closely resembles a Globally Unique Identifier is PR_INSTANCE_KEY. While this property is a MAPIUID property, it is not guaranteed to be the same value every time IExchangeManageStore::GetMailboxTable is called.

RESOLUTION

In most cases the only property that is guaranteed to be unique and stable across space and time is PR_ENTRYID. Unfortunately, this property is not returned with IExchangeManageStore::GetMailboxTable. As an alternative to PR_ENTRYID, it is possible to use PR_EMAIL_ADDRESS. Like PR_ENTRYID, this property is guaranteed to be globally unique and stable across space and time.

Modification Type:MinorLast Reviewed:3/4/2004
Keywords:kbMsg kbprb KB216420