Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Извлекает указатель на хранилище для указанного объекта.
Синтаксис
HRESULT GetObjectStorage(
[in] LPOLESTR pszItem,
[in] IBindCtx *pbc,
[in] REFIID riid,
[out] void **ppvStorage
);
Параметры
[in] pszItem
Имя составного документа для объекта, хранилище которого запрашивается.
[in] pbc
Указатель на интерфейс IBindCtx в контексте привязки, который будет использоваться в этой операции привязки. Контекст привязки кэширует объекты, привязанные к процессу привязки, содержит параметры, которые применяются ко всем операциям, использующим контекст привязки, и предоставляет средства, с помощью которых реализация привязки должна получать сведения о своей среде.
[in] riid
Ссылка на идентификатор интерфейса, используемого для взаимодействия с объектом , обычно IStorage.
[out] ppvStorage
Адрес переменной указателя, получающей указатель интерфейса, запрошенный в riid. После успешного возврата *ppvStorage содержит запрошенный указатель интерфейса на хранилище для объекта с именем pszItem. При успешном выполнении реализация должна вызвать AddRef для *ppvStorage; вызов Release лежит на вызывающем объекте. При возникновении ошибки параметру *ppvStorage присваивается значение NULL.
Возвращаемое значение
Этот метод может возвращать стандартное возвращаемое значение E_OUTOFMEMORY, а также следующие значения.
| Код возврата | Описание |
|---|---|
|
Метод полностью успешно. |
|
Параметр pszItem не определяет объект в этом контейнере. |
|
Объект не имеет собственного независимого хранилища. |
|
Запрошенный интерфейс недоступен. |
Комментарии
Реализация моникера элемента IMoniker::BindToStorage вызывает этот метод.
Примечания для разработчиков
Если pszItem обозначает псевдообъект, реализация IOleItemContainer::GetObjectStorage должна возвращать MK_E_NOSTORAGE, так как псевдообъекты не имеют собственного независимого хранилища. Если pszItem обозначает внедренный объект или часть документа, которая имеет собственное хранилище, реализация должна возвращать указанный указатель интерфейса на соответствующий объект хранилища.Требования
| Требование | Значение |
|---|---|
| Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
| Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
| Целевая платформа | Windows |
| Header | oleidl.h |