IMAPISession::ShowForm
The IMAPISession::ShowForm method displays a form.
Quick Info
See IMAPISession : IUnknown.
HRESULT ShowForm(
ULONG ulUIParam,
LPMDB lpMsgStore,
LPMAPIFOLDER lpParentFolder,
LPCIID lpInterface,
ULONG ulMessageToken,
LPMESSAGE lpMessageSent,
ULONG ulFlags,
ULONG ulMessageStatus,
ULONG ulMessageFlags,
ULONG ulAccess,
LPSTR lpszMessageClass
);
Parameters
-
ulUIParam
-
[in] Handle of the parent window for the form. The ulUIParam parameter must not be NULL if the form has been created using Microsoft® Electronic Forms Designer. The ulUIParam parameter can be NULL if the form has been created using C or C++.
-
lpMsgStore
-
[in] Pointer to the message store containing the folder pointed to by the lpParentFolder parameter.
-
lpParentFolder
-
[in] Pointer to the folder in which the message associated with the ulMessageToken parameter was created.
-
lpInterface
-
[in] Pointer to the interface identifier (IID) representing the interface to be used to access the message being displayed in the form. The lpInterface parameter must be NULL or IID_IMessage. Passing NULL results in the standard interface, or IMessage, being used.
-
ulMessageToken
-
[in] Token associated with the message to be displayed in the form. The ulMessageToken parameter must be set to the contents of the lpulMessageToken parameter from the preceding call to IMAPISession::PrepareForm.
-
lpMessageSent
-
Reserved; must be NULL.
-
ulFlags
-
[in] Bitmask of flags that controls how and whether the message is saved. The following flags can be set:
-
MAPI_NEW_MESSAGE
-
The message has never been saved — that is, its IMAPIProp::SaveChanges method has never been called.
-
MAPI_POST_MESSAGE
-
The message should be saved to its parent folder. The message is not processed for sending but posted to the folder instead. If this flag is not set, the message is copied to the Outbox and processed for sending.
-
ulMessageStatus
-
[in] Bitmask of flags copied from the PR_MSG_STATUS property of the message associated with the token in the ulMessageToken parameter. The flags provide information on the state of the message.
-
ulMessageFlags
-
[in] Bitmask of flags copied from the PR_MESSAGE_FLAGS property of the message associated with the token in the ulMessageToken parameter. These flags provide further information on the state of the message.
-
ulAccess
-
[in] Flag indicating the access level for the message being displayed in the form. This information is copied from the PR_ACCESS property of the message associated with the token in the ulMessageToken parameter.
-
lpszMessageClass
-
[in] Pointer to the message class of the message being displayed in the form, copied from the PR_MESSAGE_CLASS property of the message associated with the token in the ulMessageToken parameter.
Return Values
-
S_OK
-
The form was successfully displayed.
-
MAPI_E_USER_CANCEL
-
The user canceled the operation, typically by clicking the Cancel button in a dialog box.
Remarks
The IMAPISession::ShowForm method displays a message form that has been prepared by the IMAPISession::PrepareForm method.
Notes to Callers
You should only have a single reference to the message passed in the PrepareForm method's lpMessage parameter.
Be aware that form implementations can return error values other than the ones documented by MAPI. If you are able to use these error values to make a more accurate determination of the error condition, do so. Otherwise, handle these errors in the same manner as you would handle MAPI_E_CALL_FAILED.