Freigeben über


SHGetItemFromDataObject-Funktion (shobjidl_core.h)

Erstellt ein IShellItem- oder verwandtes Objekt basierend auf einem element, das von einem IDataObject angegeben wird.

Syntax

HRESULT SHGetItemFromDataObject(
  [in]  IDataObject            *pdtobj,
  [in]  DATAOBJ_GET_ITEM_FLAGS dwFlags,
  [in]  REFIID                 riid,
  [out] void                   **ppv
);

Parameter

[in] pdtobj

Typ: IDataObject*

Ein Zeiger auf das Quell-IDataObject-instance.

[in] dwFlags

Typ: DATAOBJ_GET_ITEM_FLAGS

Mindestens ein Wert aus der DATAOBJ_GET_ITEM_FLAGS Enumeration, um Optionen für das Zielobjekt anzugeben. Dieser Wert kann 0 sein.

[in] riid

Typ: REFIID

Ein Verweis auf die IID der Schnittstelle, die über ppv abgerufen werden soll, in der Regel IID_IShellItem.

[out] ppv

Typ: void**

Wenn diese Methode zurückgibt, enthält den in riid angeforderten Schnittstellenzeiger. Dies ist in der Regel IShellItem.

Rückgabewert

Typ: HRESULT

Wenn diese Funktion erfolgreich ist, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

Es wird empfohlen, das makro IID_PPV_ARGS zu verwenden, das in Objbase.h definiert ist, um die Parameter riid und ppv zu packen. Dieses Makro stellt die richtige IID basierend auf der Schnittstelle bereit, auf die der Wert in ppv verweist, wodurch die Möglichkeit eines Codierungsfehlers ausgeschlossen wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shobjidl_core.h (einschließlich Shobjidl.h)
DLL Shell32.dll (Version 6.1 oder höher)