다음을 통해 공유


IShellItem2::GetPropertyStoreWithCreateObject 메서드(shobjidl_core.h)

CoCreateInstance 대신 지정된 ICreateObject를 사용하여 이 메서드가 호출되는 Shell 항목과 연결된 속성 처리기의 instance 만듭니다. 대부분의 호출 애플리케이션은 이 메서드를 호출할 필요가 없으며 대신 IShellItem2::GetPropertyStore 를 호출할 수 있습니다.

구문

HRESULT GetPropertyStoreWithCreateObject(
  [in]  GETPROPERTYSTOREFLAGS flags,
  [in]  IUnknown              *punkCreateObject,
  [in]  REFIID                riid,
  [out] void                  **ppv
);

매개 변수

[in] flags

형식: GETPROPERTYSTOREFLAGS

속성 저장소 개체를 수정하는 GETPROPERTYSTOREFLAGS 상수입니다.

[in] punkCreateObject

형식: IUnknown*

ICreateObject 형식의 낮은 권한 생성을 위한 팩터리에 대한 포인터입니다.

CreateObject 메서드는 COM 개체의 instance 만듭니다. IShellItem2::GetPropertyStoreWithCreateObject 구현에서는 CoCreateInstance 대신 CreateObject를 사용하여 지정된 파일 형식에 대해 셸 확장명인 속성 처리기를 만듭니다. 속성 처리기는 이 메서드가 반환하는 속성 저장소에서 많은 중요한 속성을 제공합니다.

이 메서드는 ICreateObject 개체가 별도의 프로세스(INPROCSERVER 대신 LOCALSERVER)로 만들어지는 경우에만 유용하며, 이 다른 프로세스에서 IShellItem2::GetPropertyStoreWithCreateObject를 호출하는 프로세스보다 권한이 낮은 경우에만 유용합니다.

[in] riid

형식: REFIID

검색할 개체의 IID에 대한 참조입니다.

[out] ppv

형식: void**

이 메서드가 반환되면 요청된 IPropertyStore 인터페이스 포인터의 주소가 포함됩니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

참고 파일에 대한 속성 저장소에서 이 메서드를 호출하면 해당 파일은 IPropertyStore 개체의 수명 동안 열려 있습니다.
 

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 shobjidl_core.h(Shobjidl.h 포함)