Condividi tramite


Metodo IShellIcon::GetIconOf (shobjidl_core.h)

Ottiene un'icona per un oggetto all'interno di una cartella specifica.

Sintassi

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

Parametri

pidl

Tipo: LPCITEMIDLIST

Indirizzo della struttura ITEMIDLIST che specifica la posizione relativa della cartella.

flags

Tipo: UINT

Flag che specificano la modalità di visualizzazione dell'icona. Questo parametro può essere zero o uno dei valori seguenti.

GIL_FORSHELL

L'icona deve essere visualizzata in una cartella shell.

GIL_OPENICON

L'icona deve trovarsi nello stato aperto se sono disponibili sia immagini con stato aperto che con stato chiuso. Se questo flag non è specificato, l'icona deve trovarsi nello stato chiuso. Questo flag viene in genere usato per gli oggetti cartella.

pIconIndex

Tipo: LPINT

Indirizzo dell'indice dell'icona nell'elenco di immagini di sistema. È possibile restituire gli indici dell'elenco di immagini standard seguenti.

0

Documento (pagina vuota, non associata)

1

Documento (con dati nella pagina)

2

Applicazione (l'estensione del nome file deve essere .exe, .com o .bat)

3

Cartella (normale)

4

Cartella (aperta)

Valore restituito

Tipo: HRESULT

Restituisce S_OK se lpIconIndex contiene l'indice dell'elenco di immagini di sistema corretto o S_FALSE se non è possibile ottenere un'icona per questo oggetto.

Commenti

Se non è possibile recuperare un'icona per questo oggetto usando GetIconOf, usare il metodo GetUIObjectOf per recuperare un oggetto che supporta il metodo Extract .

IShellIcon::GetIconOf ha esito negativo se CoInitialize non viene chiamato prima.

Nota per la chiamata di applicazioni

L'indice restituito proviene dall'elenco di immagini di sistema.

Nota per implementatori

Se l'indice dell'icona usato non è una delle immagini standard elencate, è responsabilità dell'implementer aggiungere l'immagine all'elenco di immagini di sistema e quindi inserire l'indice nel parametro lpIconIndex . Per impedire che l'elenco di immagini di sistema aumenti troppo grandi, ogni immagine deve essere aggiunta una sola volta.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shobjidl_core.h (include Shobjidl.h)
DLL Shell32.dll (versione 4.0 o successiva)

Vedi anche

IShellIcon