Função SHGetItemFromDataObject (shobjidl_core.h)

Cria um IShellItem ou objeto relacionado com base em um item especificado por um IDataObject.

Sintaxe

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

Parâmetros

[in] pdtobj

Tipo: IDataObject*

Um ponteiro para a instância IDataObject de origem.

[in] dwFlags

Tipo: DATAOBJ_GET_ITEM_FLAGS

Um ou mais valores da enumeração DATAOBJ_GET_ITEM_FLAGS para especificar opções sobre o objeto de destino. Esse valor pode ser 0.

[in] riid

Tipo: REFIID

Uma referência ao IID da interface a ser recuperada por meio de ppv, normalmente IID_IShellItem.

[out] ppv

Tipo: void**

Quando esse método retorna, contém o ponteiro de interface solicitado em riid. Normalmente, isso é IShellItem.

Retornar valor

Tipo: HRESULT

Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

É recomendável que você use a macro IID_PPV_ARGS , definida em Objbase.h, para empacotar os parâmetros riid e ppv . Essa macro fornece o IID correto com base na interface apontada pelo valor em ppv, o que elimina a possibilidade de um erro de codificação.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shobjidl_core.h (inclua Shobjidl.h)
DLL Shell32.dll (versão 6.1 ou posterior)