OPTIONDATA
The OPTIONDATA
structure describes option properties supported by a transport provider.
Quick Info
|
Header
file: |
MAPISPI.H |
typedef struct _OPTIONDATA
{
ULONG ulFlags;
LPGUID lpRecipGUID;
LPTSTR lpszAdrType;
LPTSTR lpszDLLName;
ULONG ulOrdinal;
ULONG cbOptionsData;
LPBYTE
lpbOptionsData;
ULONG
cOptionsProps;
LPSPropValue lpOptionsProps;
} OPTIONDATA, FAR *LPOPTIONDATA;
Members
ulFlags
Bitmask of
flags used to specify recipient or message options. The following flags can be
set:
MAPI_MESSAGE
Message-specific
options.
MAPI_RECIPIENT
Recipient-specific
options.
lpRecipGUID
Pointer to a GUID structure identifying the
message recipient, if applicable.
lpszAdrType
Pointer to
the e-mail address type that must be NULL.
lpszDLLName
Pointer to
the name of the DLL to be loaded.
ulOrdinal
Specifies which
ordinal the transport provider DLL uses to find the client s option callback function.
cbOptionsData
Size, in
bytes, of the data pointed to by the lpbOptionsData member.
lpbOptionsData
Pointer to
transport-provider option data that is specific to the recipient or message.
cOptionsProps
Count of properties
in the array pointed to by the lpOptionsProps member.
lpOptionsProps
Pointer to an
array of SPropValue
structures, each containing information about a default option property.
Remarks
Option
properties can apply to a recipient or to a message. They often relate to an
address type or GUID supported by a transport provider. Transport
providers register to support option properties when MAPI calls their IXPLogon::RegisterOptions method.
RegisterOptions writes one or two OPTIONDATA structures for
each supported address type, depending on whether the provider registers for
both recipient and message options, recipient options only, or message options
only. If a provider is registered for both option types, RegisterOptions
writes one structure containing message option properties and one structure
containing recipient option properties.
Clients can
retrieve the current settings for these options either interactively with a
property sheet or programmatically with a property value array. To display
option properties to the user, clients call IMAPISession::MessageOptions or IAddrBook::RecipOptions. To retrieve option
properties without user intervention, clients call IMAPISession::QueryDefaultMessageOpt or IAddrBook::QueryDefaultRecipOpt.
When a client
calls MessageOptions or RecipOptions, MAPI invokes a callback
function created by the transport provider that conforms to the OPTIONCALLBACK prototype. This function
typically resides in the same DLL as the transport provider and is called to
retrieve an IMAPIProp implementation to use with a display table for
showing the message and recipient options described in the OPTIONDATA
structures.
The DLL name
in the lpszDLLname parameter should not indicate the operating system
platform when OPTIONDATA is passed in the lppOptions parameter of
the IXPLogon::RegisterOptions
method.
See Also