Поделиться через


IMessage::SubmitMessage

Область применения: Outlook 2013 | Outlook 2016

Сохраняет все свойства сообщения и помечает сообщение как готовое к отправке.

HRESULT SubmitMessage(
  ULONG ulFlags
);

Параметры

ulFlags

[в] Битовая маска флагов, используемая для управления отправкой сообщения. Можно задать следующий флаг:

FORCE_SUBMIT

MAPI должен немедленно отправить сообщение. Этот флаг в настоящее время не используется.

Возвращаемое значение

S_OK

����� ������� � ������ ��������� ��������� ��� ��������.

MAPI_E_NO_RECIPIENTS

Таблица получателей сообщения пуста.

Замечания

Метод IMessage::SubmitMessage помечает сообщение как готовое к передаче. MAPI передает сообщения в базовую систему обмена сообщениями в том порядке, в котором они помечены для отправки. Благодаря этой функциональности сообщение может оставаться в хранилище сообщений в течение некоторого времени, прежде чем базовая система обмена сообщениями сможет взять на себя ответственность за него. Порядок получения в месте назначения находится в элементе управления базовой системы обмена сообщениями и не обязательно соответствует порядку отправки сообщений.

Примечания для исполнителей

Вызовите метод IMAPIProp::SaveChanges сообщения, чтобы сохранить его, а затем проверка свойство PR_MESSAGE_FLAGS сообщения (PidTagMessageFlags). Если флаг MSGFLAG_RESEND установлен, вызовите IMAPISupport::P repareSubmit. PrepareSubmit обновляет тип получателя и свойство PR_RESPONSIBILITY (PidTagResponsibility) для всех получателей в повторном сообщении.

Примечания для вызывающих методов

При возврате SubmitMessage все указатели на сообщение и связанные с ним подобъекты сообщения, папки, вложения, потоки, таблицы и т. д. становятся недействительными. MAPI не разрешает никаких дальнейших операций с этими указателями, за исключением вызова их методов IUnknown::Release . MAPI разработан таким образом, что после вызова SubmitMessage следует освободить сообщение и все связанные подобъекты. Однако если SubmitMessage возвращает значение ошибки, указывающее на отсутствие или недопустимую информацию, сообщение остается открытым, а указатели остаются действительными.

Чтобы отменить операцию отправки, получите и сохраните указатель на свойство PR_ENTRYID сообщения (PidTagEntryId) перед отправкой сообщения. Так как идентификатор записи сообщения становится недействительным после отправки сообщения, его необходимо сохранить перед вызовом SubmitMessage. Чтобы отменить отправку, наведите параметр lpEntryId на этот идентификатор записи и вызовите IMsgStore::AbortSubmit.

Справочные материалы по MFCMAPI

Пример кода MFCMAPI указан в приведенной ниже таблице.

Файл Функция Comment
FolderDlg.cpp
CFolderDlg::OnSubmitMessage
MFCMAPI использует метод IMessage::SubmitMessage для отправки выбранного сообщения.

См. также

IMsgStore::AbortSubmit

IMessage: IMAPIProp

Mfcmapi (en) � �������� ������� ����