Compartir a través de


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

Obtiene un icono para un objeto dentro de una carpeta específica.

Sintaxis

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

Parámetros

pidl

Tipo: LPCITEMIDLIST

Dirección de la estructura ITEMIDLIST que especifica la ubicación relativa de la carpeta.

flags

Tipo: UINT

Marcas que especifican cómo se va a mostrar el icono. Este parámetro puede ser cero o uno de los valores siguientes.

GIL_FORSHELL

El icono se mostrará en una carpeta shell.

GIL_OPENICON

El icono debe estar en estado abierto si están disponibles las imágenes de estado abierto y cerrado. Si no se especifica esta marca, el icono debe estar en estado cerrado. Esta marca se usa normalmente para objetos de carpeta.

pIconIndex

Tipo: LPINT

Dirección del índice del icono en la lista de imágenes del sistema. Se pueden devolver los siguientes índices de lista de imágenes estándar.

0

Documento (página en blanco, no asociado)

1

Documento (con datos en la página)

2

Aplicación (la extensión de nombre de archivo debe ser .exe, .com o .bat)

3

Carpeta (sin formato)

4

Carpeta (abierta)

Valor devuelto

Tipo: HRESULT

Devuelve S_OK si lpIconIndex contiene el índice de lista de imágenes del sistema correcto o S_FALSE si no se puede obtener un icono para este objeto.

Comentarios

Si no puede recuperar un icono para este objeto mediante GetIconOf, use el método GetUIObjectOf para recuperar un objeto que admita el método Extract .

Se produce un error en IShellIcon::GetIconOf si no se llama primero a CoInitialize.

Nota para llamar a aplicaciones

El índice devuelto procede de la lista de imágenes del sistema.

Nota para los implementadores

Si el índice de icono usado no es una de las imágenes estándar enumeradas, es responsabilidad del implementador agregar la imagen a la lista de imágenes del sistema y, a continuación, colocar el índice en el parámetro lpIconIndex . Para evitar que la lista de imágenes del sistema crezca demasiado grande, cada imagen solo se debe agregar una vez.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shobjidl_core.h (include Shobjidl.h)
Archivo DLL Shell32.dll (versión 4.0 o posterior)

Consulte también

IShellIcon