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


Функция OleLoadFromStream (ole2.h)

Загружает объект из потока.

Синтаксис

HRESULT OleLoadFromStream(
  [in]  LPSTREAM pStm,
  [in]  REFIID   iidInterface,
  [out] LPVOID   *ppvObj
);

Параметры

[in] pStm

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

[in] iidInterface

Идентификатор интерфейса (IID), который вызывающий объект хочет использовать для взаимодействия с объектом после его загрузки.

[out] ppvObj

Адрес переменной указателя, которая получает указатель интерфейса, запрошенный в riid. После успешного возврата *ppvObj содержит запрошенный указатель интерфейса на вновь загруженный объект.

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

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

Код возврата Описание
E_OUTOFMEMORY
Недостаточно памяти для операции.
E_NOINTERFACE
Объект не поддерживает указанный интерфейс.
 

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

Комментарии

Важно  

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

 
Эту функцию можно использовать для загрузки объекта, поддерживающего интерфейс IPersistStream . CLSID объекта должен непосредственно предшествовать данным объекта в потоке, который выполняется функцией-компаньоном OleSaveToStream (или операциями, которые он заключает в оболочку, которые описаны в этом разделе).

Если CLSID для потока CLSID_NULL, параметру ppvObj присваивается значение NULL.

Требования

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

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

OleSaveToStream