Función SHGetItemFromDataObject (shobjidl_core.h)

Crea un objeto IShellItem o relacionado basado en un elemento especificado por un IDataObject.

Sintaxis

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

Parámetros

[in] pdtobj

Tipo: IDataObject*

Puntero a la instancia de IDataObject de origen.

[in] dwFlags

Tipo: DATAOBJ_GET_ITEM_FLAGS

Uno o varios valores de la enumeración DATAOBJ_GET_ITEM_FLAGS para especificar opciones con respecto al objeto de destino. Este valor puede ser 0.

[in] riid

Tipo: REFIID

Referencia al IID de la interfaz que se va a recuperar a través de ppv, normalmente IID_IShellItem.

[out] ppv

Tipo: void**

Cuando este método devuelve, contiene el puntero de interfaz solicitado en riid. Esto suele ser IShellItem.

Valor devuelto

Tipo: HRESULT

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Se recomienda usar la macro IID_PPV_ARGS , definida en Objbase.h, para empaquetar los parámetros riid y ppv . Esta macro proporciona el IID correcto basado en la interfaz a la que apunta el valor en ppv, lo que elimina la posibilidad de un error de codificación.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shobjidl_core.h (incluya Shobjidl.h)
Archivo DLL Shell32.dll (versión 6.1 o posterior)