Condividi tramite


Metodo IOleItemContainer::GetObjectStorage (oleidl.h)

Recupera un puntatore alla risorsa di archiviazione per l'oggetto specificato.

Sintassi

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

Parametri

[in] pszItem

Nome del documento composto per l'oggetto la cui risorsa di archiviazione è richiesta.

[in] pbc

Puntatore all'interfaccia IBindCtx nel contesto di associazione da usare in questa operazione di associazione. Il contesto di associazione memorizza nella cache gli oggetti associati durante il processo di associazione, contiene parametri che si applicano a tutte le operazioni che usano il contesto di associazione e fornisce i mezzi tramite cui l'implementazione dell'associazione deve recuperare informazioni sull'ambiente.

[in] riid

Riferimento all'identificatore dell'interfaccia da utilizzare per comunicare con l'oggetto, in genere IStorage.

[out] ppvStorage

Indirizzo di una variabile del puntatore che riceve il puntatore di interfaccia richiesto in riid. Al termine della restituzione, *ppvStorage contiene il puntatore di interfaccia richiesto alla risorsa di archiviazione per l'oggetto denominato da pszItem. In caso di esito positivo, l'implementazione deve chiamare AddRef in *ppvStorage; è responsabilità del chiamante chiamare Release. Se si verifica un errore, *ppvStorage è impostato su NULL.

Valore restituito

Questo metodo può restituire il valore restituito standard E_OUTOFMEMORY, nonché i valori seguenti.

Codice restituito Descrizione
S_OK
Il metodo è stato completato.
MK_E_OBJECT
Il parametro pszItem non identifica un oggetto in questo contenitore.
MK_E_NOSTORAGE
L'oggetto non dispone di una propria risorsa di archiviazione indipendente.
E_NOINTERFACE
L'interfaccia richiesta non è disponibile.

Commenti

L'implementazione del moniker dell'elemento di IMoniker::BindToStorage chiama questo metodo.

Note per gli implementatori

Se pszItem designa uno pseudooggetto, l'implementazione di IOleItemContainer::GetObjectStorage deve restituire MK_E_NOSTORAGE, perché gli pseudo-oggetti non dispongono della propria risorsa di archiviazione indipendente. Se pszItem designa un oggetto incorporato o una parte del documento con una propria risorsa di archiviazione, l'implementazione deve restituire il puntatore di interfaccia specificato nell'oggetto di archiviazione appropriato.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione oleidl.h

Vedi anche

IOleItemContainer