Método IShellIcon::GetIconOf (shobjidl_core.h)

Obtém um ícone para um objeto dentro de uma pasta específica.

Sintaxe

HRESULT GetIconOf(
  PCUITEMID_CHILD pidl,
  UINT            flags,
  int             *pIconIndex
);

Parâmetros

pidl

Tipo: LPCITEMIDLIST

O endereço da estrutura ITEMIDLIST que especifica o local relativo da pasta.

flags

Tipo: UINT

Sinalizadores que especificam como o ícone deve ser exibido. Esse parâmetro pode ser zero ou um dos valores a seguir.

GIL_FORSHELL

O ícone deve ser exibido em uma pasta Shell.

GIL_OPENICON

O ícone deverá estar no estado aberto se as imagens de estado aberto e de estado fechado estiverem disponíveis. Se esse sinalizador não for especificado, o ícone deverá estar no estado fechado. Esse sinalizador normalmente é usado para objetos de pasta.

pIconIndex

Tipo: LPINT

O endereço do índice do ícone na lista de imagens do sistema. Os índices de lista de imagens padrão a seguir podem ser retornados.

0

Documento (página em branco, não associada)

1

Documento (com dados na página)

2

Aplicativo (a extensão de nome de arquivo deve ser .exe, .com ou .bat)

3

Pasta (sem formatação)

4

Pasta (aberta)

Retornar valor

Tipo: HRESULT

Retorna S_OK se lpIconIndex contiver o índice de lista de imagens do sistema correto ou S_FALSE se um ícone não puder ser obtido para esse objeto.

Comentários

Se não for possível recuperar um ícone para esse objeto usando GetIconOf, use o método GetUIObjectOf para recuperar um objeto que dá suporte ao método Extract .

IShellIcon::GetIconOf falhará se CoInitialize não for chamado primeiro.

Observação aos aplicativos de chamada

O índice retornado é da lista de imagens do sistema.

Observação aos implementadores

Se o índice de ícone usado não for uma das imagens padrão listadas, será responsabilidade do implementador adicionar a imagem à lista de imagens do sistema e, em seguida, colocar o índice no parâmetro lpIconIndex . Para impedir que a lista de imagens do sistema fique muito grande, cada imagem só deve ser adicionada uma vez.

Requisitos

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

Confira também

IShellIcon