Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Collapse the table of content
Expand the table of content


Last modified: July 23, 2011

Applies to: Outlook

Performs the same function as HrOpenABEntryWithExchangeContext except that it automatically gets the emsabpUID from the resolved row and opens the entryID.

Header file:


Implemented by:


Called by:

Client applications and service providers

HRESULT HrOpenABEntryWithResolvedRow(
  LPSRow prwResolved,
  LPADRBOOK pAddrBook,
  ULONG cbEntryID,
  LPCIID lpInterface,
  ULONG ulFlags,
  ULONG FAR * lpulObjType,


[in] A pointer to the resolved row that is used to get the emsabpUID and open the entryID.


[in] The address book used to open the entry identifier. It cannot be NULL.


[in] The byte count of the entry identifier specified by the lpEntryID parameter.


[in] A pointer to the entry identifier that represents the address book entry to open.


[in] A pointer to the interface identifier (IID) of the interface that is used to access the open entry. Passing NULL returns the standard interface of the object. For messaging users, the standard interface is IMailUser : IMAPIProp. For distribution lists, it is IDistList : IMAPIContainerand for containers, it is IABContainer : IMAPIContainer. Callers can set lpInterface to the appropriate standard interface or an interface in the inheritance hierarchy.


[in] A bitmask of flags that controls how the entry is opened. The following flags can be set:


Requests that the entry be opened with the maximum allowed network and client permissions. For example, if the client has read and write permission, the address book provider attempts to open the entry with read and write permission. The client can retrieve the access level that was granted by calling the IMAPIProp::GetProps method of the open entry and retrieving the PR_ACCESS_LEVEL (PidTagAccessLevel) property.


Uses only the offline address book to perform name resolution. For example, you can use this flag to allow a client application to open the global address list (GAL) in cached exchange mode and access an entry in that address book from the cache without creating traffic between the client and the server. This flag is supported only by the Exchange Address Book Provider.


Allows the call to succeed, potentially before the entry is fully open and available, implying that subsequent calls to the entry might return an error.


Uses only the GAL to perform name resolution. This flag is supported only by the Exchange Address Book Provider.


Requests that the entry be opened with read and write permission. Because entries are opened with read-only access by default, clients should not assume that read and write permission was granted regardless of whether MAPI_MODIFY is set.


Does not use the offline address book to perform name resolution. This flag is supported only by the Exchange Address Book Provider.


[out] A pointer to the type of the opened entry.


[out] A pointer to a pointer of the opened entry.

© 2015 Microsoft