다음을 통해 공유


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를 호출해야 합니다. 릴리스를 호출하는 것은 호출자의 책임입니다. 오류가 발생하면 *ppvStorageNULL로 설정됩니다.

반환 값

이 메서드는 E_OUTOFMEMORY 표준 반환 값과 다음 값을 반환할 수 있습니다.

반환 코드 Description
S_OK
메서드가 완전히 성공했습니다.
MK_E_OBJECT
pszItem 매개 변수는 이 컨테이너의 개체를 식별하지 않습니다.
MK_E_NOSTORAGE
개체에 자체 독립 스토리지가 없습니다.
E_NOINTERFACE
요청된 인터페이스를 사용할 수 없습니다.

설명

IMoniker::BindToStorage의 항목 모니커 구현은 이 메서드를 호출합니다.

구현자에 대한 참고 사항

pszItem이 의사 개체를 지정하는 경우 의사 개체에는 고유한 독립 스토리지가 없으므로 IOleItemContainer::GetObjectStorage 구현에서 MK_E_NOSTORAGE 반환해야 합니다. pszItem이 포함된 개체 또는 자체 스토리지가 있는 문서의 일부를 지정하는 경우 구현은 적절한 스토리지 개체에 대해 지정된 인터페이스 포인터를 반환해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 oleidl.h

추가 정보

IOleItemContainer