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) |