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


Функция OleSaveToStream (ole.h)

Сохраняет объект с интерфейсом IPersistStream в указанном потоке.

Синтаксис

OLESTATUS OleSaveToStream(
  LPOLEOBJECT unnamedParam1,
  LPOLESTREAM unnamedParam2
);

Параметры

unnamedParam1

Указатель на интерфейс IPersistStream объекта, который будет сохранен в потоке. Параметр pPStm не может иметь значение NULL.

unnamedParam2

Указатель на интерфейс IStream в потоке, в котором должен быть сохранен объект.

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

Эта функция возвращает S_OK при успешном выполнении. Ниже перечислены другие возможные значения.

Код возврата Описание
STGMEDIUM_E_FULL
Не удалось сохранить объект из-за нехватки места на диске.
OLE_E_BLANK
Параметр pPStm имеет значение NULL.
 

Эта функция также может возвращать любые значения ошибок, возвращаемые функцией WriteClassStm или методом IPersistStream::Save .

Комментарии

Эта функция упрощает сохранение объекта, реализующего интерфейс IPersistStream , в поток. В этом потоке перед данными предшествует ИДЕНТИФИКАТОР CLSID объекта. При извлечении потока ИДЕНТИФИКАТОР CLSID позволяет связать правильный код с данными. Функция OleSaveToStream выполняет следующие действия:

  • Вызывает метод IPersist::GetClassID для получения идентификатора CLSID объекта.
  • Записывает CLSID в поток с помощью функции WriteClassStm .
  • Вызывает метод IPersistStream::Save с параметромfClearDirty, который очищает бит грязное в объекте .
Вспомогательный помощник OleLoadFromStream загружает сохраненные таким образом объекты.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header ole.h (включая Ole2.h)
Библиотека Ole32.lib
DLL Ole32.dll
Набор API ext-ms-win-com-ole32-l1-1-1 (появилось в Windows 8.1)

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

IPersistStream

IStream

OleLoadFromStream