Método IOleItemContainer::GetObjectStorage (oleidl.h)

Recupera um ponteiro para o armazenamento do objeto especificado.

Sintaxe

HRESULT GetObjectStorage(
  [in]  LPOLESTR pszItem,
  [in]  IBindCtx *pbc,
  [in]  REFIID   riid,
  [out] void     **ppvStorage
);

Parâmetros

[in] pszItem

O nome do documento composto para o objeto cujo armazenamento é solicitado.

[in] pbc

Um ponteiro para a interface IBindCtx no contexto de associação a ser usado nesta operação de associação. O contexto de associação armazena em cache objetos associados durante o processo de associação, contém parâmetros que se aplicam a todas as operações usando o contexto de associação e fornece os meios pelos quais a implementação de associação deve recuperar informações sobre seu ambiente.

[in] riid

Uma referência ao identificador da interface a ser usada para se comunicar com o objeto, geralmente IStorage.

[out] ppvStorage

Endereço de uma variável de ponteiro que recebe o ponteiro de interface solicitado em riid. Após o retorno bem-sucedido, *ppvStorage contém o ponteiro de interface solicitado para o armazenamento do objeto chamado por pszItem. Quando bem-sucedida, a implementação deve chamar AddRef em *ppvStorage; é responsabilidade do chamador chamar Release. Se ocorrer um erro, *ppvStorage será definido como NULL.

Retornar valor

Esse método pode retornar o valor de retorno padrão E_OUTOFMEMORY, bem como os valores a seguir.

Código de retorno Descrição
S_OK
O método foi completamente bem-sucedido.
MK_E_OBJECT
O parâmetro pszItem não identifica um objeto neste contêiner.
MK_E_NOSTORAGE
O objeto não tem seu próprio armazenamento independente.
E_NOINTERFACE
A interface solicitada não está disponível.

Comentários

A implementação do moniker de item de IMoniker::BindToStorage chama esse método.

Anotações aos implementadores

Se pszItem designar um pseudo-objeto, sua implementação de IOleItemContainer::GetObjectStorage deverá retornar MK_E_NOSTORAGE, pois pseudo-objetos não têm seu próprio armazenamento independente. Se pszItem designar um objeto inserido ou uma parte do documento que tenha seu próprio armazenamento, sua implementação deverá retornar o ponteiro de interface especificado no objeto de armazenamento apropriado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho oleidl.h

Confira também

Ioleitemcontainer