Condividi tramite


Funzione ExtractIconA (shellapi.h)

Ottiene un handle per un'icona dal file eseguibile, dalla DLL o dal file icona specificato.

Per recuperare una matrice di handle in icone grandi o piccole, usare la funzione ExtractIconEx .

Sintassi

HICON ExtractIconA(
  [in] HINSTANCE hInst,
  [in] LPCSTR    pszExeFileName,
       UINT      nIconIndex
);

Parametri

[in] hInst

Tipo: HINSTANCE

Handle per l'istanza dell'applicazione che chiama la funzione.

[in] pszExeFileName

Tipo: LPCTSTR

Puntatore a una stringa con terminazione Null che specifica il nome di un file eseguibile, una DLL o un file icona.

nIconIndex

Tipo: UINT

Specifica l'indice in base zero dell'icona da recuperare. Ad esempio, se questo valore è 0, la funzione restituisce un handle alla prima icona nel file specificato.

Se questo valore è -1, la funzione restituisce il numero totale di icone nel file specificato. Se il file è un file eseguibile o una DLL, il valore restituito è il numero di risorse RT_GROUP_ICON. Se il file è un oggetto . File ICO, il valore restituito è 1.

Se questo valore è un numero negativo diverso da –1, la funzione restituisce un handle all'icona nel file specificato il cui identificatore di risorsa è uguale al valore assoluto di nIconIndex. Ad esempio, è necessario usare –3 per estrarre l'icona il cui identificatore di risorsa è 3. Per estrarre l'icona il cui identificatore di risorsa è 1, usare la funzione ExtractIconEx .

Valore restituito

Tipo: hicon

Il valore restituito è un handle per un'icona. Se il file specificato non è un file eseguibile, una DLL o un file icona, il valore restituito è 1. Se nel file non sono state trovate icone, il valore restituito è NULL.

Osservazioni

Quando non è più necessario, è necessario eliminare definitivamente l'handle icona restituito da ExtractIcon chiamando la funzione DestroyIcon.

Nota

L'intestazione shellapi.h definisce ExtractIcon come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione shellapi.h
dll Shell32.dll
set di API ext-ms-win-shell-shell32-l1-2-1 (introdotto in Windows 10, versione 10.0.10240)

Vedere anche

extractAssociatedIcon

ExtractAssociatedIconEx

ExtractIconEx