Compartilhar via


Função SHCreateShellItem (shlobj_core.h)

Cria um objeto IShellItem .

Nota É recomendável que você use SHCreateItemWithParent ou SHCreateItemFromIDList em vez dessa função.
 

Sintaxe

SHSTDAPI SHCreateShellItem(
  [in, optional] PCIDLIST_ABSOLUTE pidlParent,
  [in, optional] IShellFolder      *psfParent,
  [in]           PCUITEMID_CHILD   pidl,
  [out]          IShellItem        **ppsi
);

Parâmetros

[in, optional] pidlParent

Tipo: PCIDLIST_ABSOLUTE

Um PIDL para o pai. Esse valor pode ser NULL.

[in, optional] psfParent

Tipo: IShellFolder*

Um ponteiro para o IShellFolder pai. Esse valor pode ser NULL.

[in] pidl

Tipo: PCUITEMID_CHILD

Um PIDL para o item solicitado. Se as informações pai não estiverem incluídas em pidlParent ou psfParent, isso deverá ser um PIDL absoluto.

[out] ppsi

Tipo: IShellItem**

Quando esse método retorna, contém o ponteiro de interface para o novo 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

SHCreateShellItem cria um objeto que representa um item de namespace shell. O chamador deve fornecer informações pai em pidlParent ou psfParent; como alternativa, o chamador pode fornecer uma IDList absoluta no parâmetro pidl .

Há três padrões de chamada válidos para essa função:

  1. A pasta pai é identificada por um pidlParent IDList absoluto. O parâmetro pidl aponta para uma IDList filho que identifica o item dentro da pasta identificada por pidlParent.
    IShellItem *psi;
    SHCreateShellItem(pidlParent, NULL, pidlChild, &psi);
    
    
  2. A pasta pai é identificada por psfParent. O parâmetro pidl aponta para um IDList filho que identifica o item dentro da pasta identificada por psfParent.
    IShellItem *psi;
    SHCreateShellItem(NULL, psfParent, pidlChild, &psi);
    
    
  3. O item é identificado por um IDList absoluto passado para o parâmetro pidl .
    IShellItem *psi;
    SHCreateShellItem(NULL, NULL, pidlFull, &psi);
    
    

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP com SP1 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlobj_core.h (inclua Shlobj.h)
Biblioteca Shell32.lib
DLL Shell32.dll
Conjunto de APIs ext-ms-win-shell32-l1-2-2 (introduzido no Windows 10, versão 10.0.14393)