共用方式為


HrOpenABEntryWithResolvedRow

Applies to: Office 2010 | Outlook 2010 | Visual Studio

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

Header file:

abhelp.h

Implemented by:

MAPI

Called by:

Client applications and service providers

HRESULT HrOpenABEntryWithResolvedRow(
  LPSRow prwResolved,
  LPADRBOOK pAddrBook,
  ULONG cbEntryID,
  LPENTRYID lpEntryID,
  LPCIID lpInterface,
  ULONG ulFlags,
  ULONG FAR * lpulObjType,
  LPUNKNOWN FAR * lppUnk
);

Parameters

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

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

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

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

  • lpInterface
    [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.

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

    • MAPI_BEST_ACCESS
      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.

    • MAPI_CACHE_ONLY
      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.

    • MAPI_DEFERRED_ERRORS
      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.

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

    • MAPI_MODIFY
      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.

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

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

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