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


Функция OleLoadPictureEx (olectl.h)

Создает объект picture и инициализирует его из содержимого потока. Это эквивалентно вызову OleCreatePictureIndirect с null в качестве первого параметра, за которым следует вызов IPersistStream::Load.

Синтаксис

WINOLECTLAPI OleLoadPictureEx(
  [in]  LPSTREAM lpstream,
  [in]  LONG     lSize,
  [in]  BOOL     fRunmode,
  [in]  REFIID   riid,
  [in]  DWORD    xSizeDesired,
  [in]  DWORD    ySizeDesired,
  [in]  DWORD    dwFlags,
  [out] LPVOID   *lplpvObj
);

Параметры

[in] lpstream

Указатель на поток, содержащий данные рисунка.

[in] lSize

Количество байтов, которые должны быть считаны из потока, или ноль, если весь поток должен быть прочитан.

[in] fRunmode

Противоположность начальному значению свойства KeepOriginalFormat . Если задано значение TRUE, параметру KeepOriginalFormat присваивается значение FALSE и наоборот.

[in] riid

Ссылка на идентификатор интерфейса, описывающий тип указателя интерфейса, возвращаемого в ppvObj.

[in] xSizeDesired

Требуемая ширина значка или курсора. Допустимые значения: 16, 32 и 48. Передайте LP_DEFAULT в оба параметра размера, чтобы использовать системный размер по умолчанию.

[in] ySizeDesired

Требуемая высота значка или курсора. Допустимые значения: 16, 32 и 48. Передайте LP_DEFAULT в оба параметра размера, чтобы использовать системный размер по умолчанию.

[in] dwFlags

Требуемая глубина цвета для значка или курсора. Значения: LP_MONOCHROME (монохромный), LP_VGACOLOR (16 цветов), LP_COLOR (256 цветов) или LP_DEFAULT (выбирает оптимальную глубину для текущего отображения).

[out] lplpvObj

Адрес переменной указателя, которая получает указатель интерфейса, запрошенный в riid. После успешного возврата *ppvObj содержит запрошенный указатель интерфейса на хранилище объекта, определяемого моникером. Если значение *ppvObj не равно NULL, эта функция вызывает IUnknown::AddRef в интерфейсе ; за вызов IUnknown::Release отвечает вызывающий объект. При возникновении ошибки параметру *ppvObj присваивается значение NULL.

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

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

Код возврата Описание
E_NOINTERFACE
Объект не поддерживает интерфейс, указанный в riid.
E_POINTER
Недопустимый адрес в pPictDesc или ppvObj . Например, он может иметь значение NULL.

Комментарии

Поток должен быть в формате BMP (растровое изображение), WMF (метафайл) или ICO (значок). Объект рисунка, созданный с помощью OleLoadPictureEx , всегда владеет своими внутренними ресурсами (подразумевается fOwn==TRUE ).

Помимо указания размера значка или курсора, OleLoadPictureEx поддерживает загрузку цветовых курсоров.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header olectl.h
Библиотека OleAut32.lib
DLL OleAut32.dll

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

OleCreatePictureIndirect

PICTDESC