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


IMAPIMessageSite::DeleteMessage

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

Удаляет текущее сообщение.

HRESULT DeleteMessage(
  LPMAPIVIEWCONTEXT pViewContext,
  LPCRECT prcPosRect
);

Параметры

pViewContext

[в] Указатель на объект контекста представления.

prcPosRect

[в] Указатель на структуру RECT , содержащую размер и положение окна текущей формы. В следующей отображаемой форме также используется этот прямоугольник окна.

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

S_OK

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

MAPI_E_NO_SUPPORT

Эта операция не поддерживается этим сайтом сообщений.

Замечания

Объект формы вызывает метод IMAPIMessageSite::D eleteMessage , чтобы удалить сообщение, отображаемое формой в данный момент.

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

После возврата deleteMessage объекты формы должны проверка для нового сообщения, а затем закрыть себя, если оно не существует. Чтобы определить, было ли удалено или перенесено сообщение DeleteMessage в папку "Удаленные" , объект формы может вызвать метод IMAPIMessageSite::GetSiteStatus , чтобы определить, был ли возвращен флаг DELETE_IS_MOVE.

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

Если реализация метода DeleteMessage в средстве просмотра формы переходит к следующему сообщению после удаления сообщения, реализация должна вызвать метод IMAPIViewContext::ActivateNext и передать флаг VCDIR_DELETE перед выполнением фактического удаления. Если реализация DeleteMessage средства просмотра форм перемещает удаленное сообщение (например, в папку "Удаленные"), реализация должна сохранить изменения в сообщении, если сообщение было изменено.

Типичная реализация DeleteMessage выполняет следующие задачи:

  1. Если реализация перемещает сообщение, она вызывает метод IPersistMessage::Save , передавая null в параметре pMessage и true в параметре fSameAsLoad .

  2. Он вызывает метод IMAPIViewContext::ActivateNext , передавая флаг VCDIR_DELETE в параметре ulDir .

  3. Если вызов ActivateNext завершается ошибкой , он возвращается. Если ActivateNext возвращает S_FALSE, он вызывает метод IPersistMessage::HandsOffMessage .

  4. Он удаляет или перемещает сообщение.

Чтобы получить структуру RECT , используемую окном формы, вызовите функцию Windows GetWindowRect .

Список интерфейсов, связанных с серверами форм, см. в разделе Интерфейсы формы MAPI.

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

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

Файл Функция Comment
MyMAPIFormViewer.cpp
CMyMAPIFormViewer::D eleteMessage
Не реализовано.

См. также

IMAPIMessageSite::GetSiteStatus

IMAPIViewContext::ActivateNext

IPersistMessage::HandsOffMessage

IPersistMessage::Save

IMAPIMessageSite : IUnknown

MFCMAPI как пример кода

Интерфейсы форм MAPI