Freigeben über


PSGetItemPropertyHandler-Funktion (propsys.h)

Ruft einen Eigenschaftenhandler für ein Shellelement ab.

Syntax

PSSTDAPI PSGetItemPropertyHandler(
  [in]  IUnknown *punkItem,
  [in]  BOOL     fReadWrite,
  [in]  REFIID   riid,
  [out] void     **ppv
);

Parameter

[in] punkItem

Typ: IUnknown*

Ein Zeiger auf die IUnknown-Schnittstelle eines Shellelements, das IShellItem unterstützt.

Windows XP: Verwenden Sie SHCreateShellItem , um das Shellelement zu erstellen.

Windows Vista: Verwenden Sie SHCreateItemFromIDList, SHCreateItemFromParsingName, SHCreateItemFromRelativeName, SHCreateItemInKnownFolder oder SHCreateItemWithParent, um das Shell-Element zu erstellen.

[in] fReadWrite

Typ: BOOL

TRUE , um einen Lese-/Schreibeigenschaftenhandler abzurufen. FALSE , um einen schreibgeschützten Eigenschaftenhandler abzurufen.

[in] riid

Typ: REFIID

Verweis auf die IID der Schnittstelle, die das Handlerobjekt zurückgeben soll. Dies sollte IPropertyStore oder eine von IPropertyStore abgeleitete Schnittstelle sein.

[out] ppv

Typ: void**

Wenn diese Funktion zurückgibt, enthält den in riid angeforderten Schnittstellenzeiger.

Rückgabewert

Typ: PSSTDAPI

Gibt bei erfolgreicher Ausführung S_OK oder andernfalls einen Fehlerwert zurück.

Hinweise

Diese Funktion wird in Windows XP und Windows Vista unterstützt. Für Anwendungen, die nur unter Windows Vista oder höher unterstützt werden, wird empfohlen, IShellItem2::GetPropertyStore anstelle von PSGetItemPropertyHandler zu verwenden. Diese Methode stellt einen umfangreicheren Satz von Eigenschaften im zurückgegebenen Eigenschaftenspeicher bereit.

Diese Funktion entspricht ungefähr dem Übergeben des GPS_HANDLERPROPERTIESONLY-Flags an IShellItem2::GetPropertyStore.

Sie müssen das Component Object Model (COM) mit CoInitialize oder OleInitialize initialisieren , bevor Sie PSGetItemPropertyHandler aufrufen. COM muss für die Lebensdauer dieses Objekts initialisiert bleiben.

Beispiele

Im folgenden Beispiel, das als Teil eines größeren Programms eingeschlossen werden soll, wird veranschaulicht, wie Sie PSGetItemPropertyHandler verwenden, um einen Eigenschaftenhandler für ein Element abzurufen.

// IShellItem *psi;
// Assume variable psi is valid and initialized.
IPropertyStore *pStore;

HRESULT hr = PSGetItemPropertyHandler(psi, FALSE, IID_PPV_ARGS(&pStore));

if (SUCCEEDED(hr))
{
    // pStore is now valid and contains properties exposed through the 
    // property handler for the item.
 
    pStore->Release();
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP mit SP2, Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 mit SP1 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile propsys.h
Bibliothek Propsys.lib
DLL Propsys.dll (Version 6.0 oder höher)
Verteilbare Komponente Windows Desktop Search (WDS) 3.0