MAPIDetails
The MAPIDetails
function displays a dialog box containing the details of a selected address
list entry. 
Quick Info
| 
   Header
  file:  | 
  
   MAPI.H  | 
 
ULONG FAR PASCAL MAPIDetails(
| 
       LHANDLE lhSession,   | 
  
   | 
 
| 
       ULONG ulUIParam,   | 
  
   | 
 
| 
       lpMapiRecipDesc lpRecip,   | 
  
   | 
 
| 
       FLAGS flFlags,   | 
  
   | 
 
| 
       ULONG ulReserved  | 
  
   | 
 
| 
      )  | 
  
   | 
 
Parameters
lhSession
[in] Session
handle that represents a Simple MAPI session or zero. If the value of the lhSession
parameter is zero, MAPI logs on the user and creates a session that exists only
for the duration of the call. This temporary session can be an existing shared
session or a new one. If additional information is required from the user to
successfully complete the logon, a dialog box is displayed.
ulUIParam
[in] Parent
window handle or zero, indicating that if a dialog box is displayed, it is
application modal. If the ulUIParam parameter contains a parent window
handle, it is of type HWND (cast to a ULONG). If no dialog box is displayed
during the call, ulUIParam is ignored.
lpRecip
[in] Pointer
to the recipient for which details are to be displayed. MAPIDetails
ignores all members of this MapiRecipDesc structure except the ulEIDSize and lpEntryID
members. If the value of ulEIDSize is non-zero, MAPIDetails
resolves the recipient entry. If the value of ulEIDSize is zero, MAPIDetails
returns the MAPI_E_AMBIGUOUS_RECIP value. 
flFlags
[in] Bitmask
of option flags. The following flags can be set:
MAPI_AB_NOMODIFY
The caller is
requesting that the dialog box be read-only, prohibiting changes. MAPIDetails
might or might not honor the request.
MAPI_LOGON_UI
A dialog box
should be displayed to prompt the user to log on if required. When the
MAPI_LOGON_UI flag is not set, the client application does not display a logon
dialog box and returns an error value if the user is not logged on.
MAPI_NEW_SESSION
An attempt
should be made to create a new session rather than acquire the environment s
shared session. If the MAPI_NEW_SESSION flag is not set, MAPIDetails
uses an existing shared session.
ulReserved
Reserved;
must be zero.
ReturnValues
MAPI_E_AMBIGUOUS_RECIPIENT
The dialog
box could not be displayed because the ulEIDSize member of the structure
pointed to by the lpRecips parameter was zero.
MAPI_E_FAILURE
One or more
unspecified errors occurred. No dialog box was displayed.
MAPI_E_INSUFFICIENT_MEMORY
There was
insufficient memory to proceed. No dialog box was displayed.
MAPI_E_INVALID_RECIPS
The recipient
specified in the lpRecip parameter was unknown or the recipient had an
invalid ulEIDSize value. No dialog box was displayed.
MAPI_E_LOGIN_FAILURE
There was no
default logon, and the user failed to log on successfully when the logon dialog
box was displayed. No dialog box was displayed.
MAPI_E_NOT_SUPPORTED
The operation
was not supported by the underlying messaging system.
MAPI_E_USER_ABORT
The user
canceled either the logon dialog box or the details dialog box.
SUCCESS_SUCCESS
The call
succeeded and the details dialog box was displayed.
Remarks
The MAPIDetails
function presents a dialog box that shows the details of a particular address
list entry. The display name and address are the minimum attributes that are
displayed in the dialog box; more information can be shown, depending on the
address book provider. The details dialog box cannot be suppressed, but the
caller can request that it be read-only or modifiable. 
Details can
only be shown for resolved address list entries. An entry is resolved if the
value of the ulEIDSize member of the MapiRecipDesc structure is nonzero.
Entries are resolved when they are returned by the MAPIAddress or MAPIResolveName functions and as the
result being recipients of read mail.
See Also