IMAPIFolder::EmptyFolder
Область применения: Outlook 2013 | Outlook 2016
Удаляет все сообщения и вложенные папки из папки, не удаляя саму папку.
HRESULT EmptyFolder(
ULONG_PTR ulUIParam,
LPMAPIPROGRESS lpProgress,
ULONG ulFlags
);
Параметры
ulUIParam
[в] Дескриптор родительского окна индикатора хода выполнения. Параметр ulUIParam игнорируется, если в параметре ulFlags не установлен флаг FOLDER_DIALOG.
lpProgress
[в] Указатель на объект выполнения, отображающий индикатор хода выполнения. Если в lpProgress передается значение NULL, поставщик хранилища сообщений отображает индикатор хода выполнения с помощью реализации объекта хода выполнения MAPI. Параметр lpProgress игнорируется, если в параметре ulFlags не установлен флаг FOLDER_DIALOG.
ulFlags
[в] Битовая маска флагов, управляющая способом очистки папки. Можно задать следующие флаги:
DEL_ASSOCIATED
Удаляет все вложенные папки, включая вложенные папки, содержащие сообщения со связанным содержимым. Флаг DEL_ASSOCIATED имеет значение только для папки верхнего уровня, с помощью которого выполняется вызов.
DELETE_HARD_DELETE
Безвозвратно удаляет все сообщения, в том числе обратимо удаленные.
FOLDER_DIALOG
Отображает индикатор хода выполнения во время выполнения операции.
Возвращаемое значение
S_OK
Папка была успешно очищена.
MAPI_W_PARTIAL_COMPLETION
Вызов выполнен успешно, но папка не была полностью очищена. При возврате этого предупреждения вызов должен быть обработан как успешный. Чтобы проверить наличие этого предупреждения, используйте макрос HR_FAILED . Дополнительные сведения см. в разделе Использование макросов для обработки ошибок.
Замечания
Метод IMAPIFolder::EmptyFolder удаляет все содержимое папки, не удаляя саму папку.
Во время вызова EmptyFolder отправленные сообщения не удаляются.
Связанное содержимое папки включает сообщения, которые используются для описания представлений, правил, настраиваемых форм и пользовательского хранилища решений, а также могут содержать определения форм.
Примечания для исполнителей
Не вызывайте метод IMsgStore::AbortSubmit для отправленных сообщений в папке. Отправленные сообщения не удаляются.
Примечания для вызывающих методов
Ожидайте эти возвращаемые значения при следующих условиях.
Condition | Возвращаемое значение |
---|---|
EmptyFolder успешно очистил папку. | S_OK |
EmptyFolder не удалось полностью очистить папку. | MAPI_W_PARTIAL_COMPLETION |
Не удалось завершить emptyFolder. | Любое значение ошибки |
Если emptyFolder не удается завершить, не предполагайте, что работа не выполнена. EmptyFolder , возможно, удалось удалить часть содержимого папки, прежде чем возникла ошибка.
Справочные материалы по MFCMAPI
Пример кода MFCMAPI указан в приведенной ниже таблице.
Файл | Функция | Comment |
---|---|---|
MsgStoreDlg.cpp |
CMsgStoreDlg::OnEmptyFolder |
MFCMAPI использует метод IMAPIFolder::EmptyFolder для удаления содержимого указанной папки. |