IExchangeManageStore::GetRights

The GetRights method obtains the rights that the user has for a folder.

HRESULT GetRights(
  ULONG cbUserEntryIDSize,  
  LPENTRYID lpUserEntryID,  
  ULONG cbEntryIDSize,  
  LPENTREYID lpEntryID, 
  ULONG FAR * pRights   
);
 

Parameters

cbUserEntryIDSize
Input parameter. The size, in bytes, of the entry identifier in lpUserEntryID.
lpUserEntryID
Input parameter. Points to a MAPI ENTRYID structure, which contains the entry identifier for the user whose rights you want.
cbEntryIDSize
Input parameter. The size, in bytes, of the entry identifier in lpEntryID.
lpEntryID
Input parameter. Points to an ENTRYID structure, which contains the entry identifier for the folder.
pRights
Output parameter. Points to a value containing the rights the user has on the folder:
frightsReadAny
The user can read any of the messages in the folder.
frightsCreate
The user can create a new message in the folder.
frightsEditOwned
The user can edit any message in the folder that they own.
frightsDeleteOwned
The user can delete any message in the folder that they own.
frightsEditAny
The user can edit any message in the folder.
frightsDeleteAny
The user can delete any message in the folder.
frightsCreateSubfolder
The user can create a new sub-folder in the folder.
frightsOwner
The user owns the folder, and has all rights.
frightsContact
The user is the contact for the folder.

Return Values

See Return Values. In addition, GetRights can return one of the following values:

SUCCESS_SUCCESS
The method completed successfully.
MAPI_E_CALL_FAILED
An unknown error occurred.
MAPI_E_INVALID_PARAMETER
One of the parameters was not valid.
MAPI_E_NO_ACCESS
The user has no permissions on the folder.
MAPI_E_NOT_ENOUGH_MEMORY
There wasn't enough memory to complete the operation.

See Also

IExchangeManageStore, IExchangeManageStore::EntryIDFromSourceKey