IMAPISession::ShowForm
Область применения: Outlook 2013 | Outlook 2016
Отображает форму.
HRESULT ShowForm(
ULONG_PTR ulUIParam,
LPMDB lpMsgStore,
LPMAPIFOLDER lpParentFolder,
LPCIID lpInterface,
ULONG ulMessageToken,
LPMESSAGE lpMessageSent,
ULONG ulFlags,
ULONG ulMessageStatus,
ULONG ulMessageFlags,
ULONG ulAccess,
LPSTR lpszMessageClass
);
Параметры
ulUIParam
[в] Дескриптор родительского окна формы.
lpMsgStore
[в] Указатель на хранилище сообщений, содержащее папку, на которую указывает параметр lpParentFolder .
lpParentFolder
[в] Указатель на папку, в которой было создано сообщение, связанное с параметром ulMessageToken .
lpInterface
[в] Указатель на идентификатор интерфейса (IID), представляющий интерфейс, используемый для доступа к сообщению, отображаемого в форме. Параметр lpInterface должен иметь значение NULL или IID_IMessage. Передача null приводит к использованию стандартного интерфейса IMessage.
ulMessageToken
[в] Маркер, связанный с сообщением, отображаемым в форме. Для параметра ulMessageToken необходимо задать содержимое параметра lpulMessageToken из предыдущего вызова IMAPISession::P repareForm.
lpMessageSent
[в] Защищены; значение должно иметь значение NULL.
ulFlags
[в] Битовая маска флагов, управляющая тем, как и сохраняется ли сообщение. Можно задать следующие флаги:
MAPI_NEW_MESSAGE
Сообщение никогда не сохранялось (то есть его метод IMAPIProp::SaveChanges никогда не вызывался).
MAPI_POST_MESSAGE
Сообщение должно быть сохранено в родительской папке. Сообщение не обрабатывается для отправки, а отправляется в папку. Если этот флаг не установлен, сообщение копируется в папку "Исходящие" и обрабатывается для отправки.
ulMessageStatus
[в] Битовая маска флагов, скопированная из свойства PR_MSG_STATUS (PidTagMessageStatus) сообщения, связанного с маркером в параметре ulMessageToken . Флаги предоставляют сведения о состоянии сообщения.
ulMessageFlags
[в] Битовая маска флагов, скопированная из свойства PR_MESSAGE_FLAGS (PidTagMessageFlags) сообщения, связанного с маркером в параметре ulMessageToken . Эти флаги предоставляют дополнительные сведения о состоянии сообщения.
ulAccess
[в] Флаг, указывающий уровень разрешений для сообщения, отображаемого в форме. Эти сведения копируются из свойства PR_ACCESS (PidTagAccess) сообщения, связанного с маркером в параметре ulMessageToken .
lpszMessageClass
[в] Указатель на класс сообщения, отображаемого в форме, копируемого из свойства PR_MESSAGE_CLASS (PidTagMessageClass) сообщения, связанного с маркером в параметре ulMessageToken .
Возвращаемое значение
S_OK
Форма успешно отображается.
MAPI_E_USER_CANCEL
Пользователь отменил операцию, обычно нажав кнопку Отмена в диалоговом окне.
Замечания
Метод IMAPISession::ShowForm отображает форму сообщения, подготовленную методом IMAPISession::P repareForm .
Примечания для вызывающих методов
В параметре lpMessage метода PrepareForm должна быть только одна ссылка на сообщение.
Имейте в виду, что реализации форм могут возвращать значения ошибок, отличные от тех, которые описаны MAPI. Если эти значения ошибок можно использовать для более точного определения условия ошибки, сделайте это. В противном случае обработайте эти ошибки так же, как и MAPI_E_CALL_FAILED.
Справочные материалы по MFCMAPI
Пример кода MFCMAPI указан в приведенной ниже таблице.
Файл | Функция | Comment |
---|---|---|
MAPIFormFunctions.cpp |
OpenMessageModal |
MFCMAPI использует метод IMAPISession::ShowForm вместе с методом PrepareForm для отображения сообщения в модальной форме. |