IOleItemContainer::GetObjectStorage メソッド (oleidl.h)
指定したオブジェクトのストレージへのポインターを取得します。
構文
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 という名前のオブジェクトのストレージへの要求されたインターフェイス ポインターが含まれます。 成功した場合、実装は *ppvStorage で AddRef を呼び出す必要があります。Release を呼び出すのは呼び出し元の責任です。 エラーが発生した場合、*ppvStorage は NULL に設定されます。
戻り値
このメソッドは、E_OUTOFMEMORY標準の戻り値と、次の値を返すことができます。
リターン コード | 説明 |
---|---|
|
メソッドは完全に正常に実行されます。 |
|
パラメーター pszItem は、このコンテナー内のオブジェクトを識別しません。 |
|
オブジェクトには、独自の独立したストレージがありません。 |
|
要求されたインターフェイスは使用できません。 |
注釈
IMoniker::BindToStorage のアイテム モニカー実装では、このメソッドが呼び出されます。
実装者へのメモ
pszItem で擬似オブジェクトが指定されている場合、IOleItemContainer::GetObjectStorage の実装では、擬似オブジェクトに独自の独立したストレージがないため、MK_E_NOSTORAGEが返されます。 pszItem が埋め込みオブジェクト、または独自のストレージを持つドキュメントの一部を指定する場合、実装は適切なストレージ オブジェクトに指定されたインターフェイス ポインターを返す必要があります。要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | oleidl.h |