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


Метод IStorage::D etraitsElement (objidl.h)

Метод DestroyElement удаляет указанное хранилище или поток из этого объекта хранилища.

Синтаксис

HRESULT DestroyElement(
  [in] const OLECHAR *pwcsName
);

Параметры

[in] pwcsName

Указатель на строку Юникода с широким символом, завершающуюся null, которая содержит имя удаляемого хранилища или потока.

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

Этот метод может возвращать одно из этих значений.

Код возврата Описание
S_OK Элемент был успешно удален.
E_PENDING Только асинхронное хранилище. Часть или все данные элемента в настоящее время недоступны.
STG_E_ACCESSDENIED Вызывающий объект не имеет разрешений на удаление элемента.
STG_E_FILENOTFOUND Элемент с указанным именем не существует.
STG_E_INSUFFICIENTMEMORY Элемент не был удален из-за нехватки памяти.
STG_E_INVALIDNAME Недопустимое значение для pwcsName.
STG_E_INVALIDPOINTER Недопустимый указатель, указанный для элемента .
STG_E_INVALIDPARAMETER Один из параметров был недопустим.
STG_E_REVERTED Объект хранилища был признан недействительным в результате операции отменить изменения над ним в дереве транзакций.
STG_E_TOOMANYOPENFILES Элемент не был удален, так как открыто слишком много файлов.

Комментарии

Метод DestroyElement удаляет вложенный журнал или поток из текущего объекта хранилища. После успешного вызова DestroyElement любой открытый экземпляр уничтоженного элемента из родительского хранилища становится недействительным.

Если объект хранилища открыт в режиме транзакций, для уничтожения элемента требуется, чтобы вызов DestroyElement сопровождался вызовом IStorage::Commit.

Примечание Метод DestroyElement не сжимает поток каталога. Удаленная запись каталога помечается как недопустимая. Недопустимые записи повторно используются при создании нового хранилища или потока.

Для потоков содержимого удаленные секторы потока помечаются как свободные. Если свободные секторы находятся в конце файла, файл документа должен быть сжат. Чтобы сжать файл документа, вызовите метод IStorage::CopyTo в корневом объекте хранилища и скопируйте его в новый объект хранилища.

 

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header objidl.h
Библиотека Uuid.lib
DLL Ole32.dll

См. также раздел

IStorage — реализация составного файла