Share via


IShellItem2::GetPropertyStoreWithCreateObject 方法 (shobjidl_core.h)

使用指定的 ICreateObject 而非 CoCreateInstance ,建立與呼叫這個方法之 Shell 專案相關聯的屬性處理程序實例。 大部分呼叫的應用程式不需要呼叫此方法,而且可以改為呼叫 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 對象的實例。 IShellItem2::GetPropertyStoreWithCreateObject 的實作會使用 CreateObject 而不是 CoCreateInstance 來建立屬性處理程式,這是指定文件類型的 Shell 延伸模組。 屬性處理程式會在這個方法傳回的屬性存放區中提供許多重要屬性。

只有當 ICreateObject 物件 (是以 LOCALSERVER 取代 INPROCSERVER 而非 INPROCSERVER) ,而且這個其他進程的許可權低於呼叫 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)