Funzione ExtractIconExA (shellapi.h)
La funzione ExtractIconEx
Sintassi
UINT ExtractIconExA(
[in] LPCSTR lpszFile,
[in] int nIconIndex,
[out] HICON *phiconLarge,
[out] HICON *phiconSmall,
UINT nIcons
);
Parametri
[in] lpszFile
Tipo: LPCTSTR
Puntatore a una stringa con terminazione Null che specifica il nome di un file eseguibile, una DLL o un file icona da cui verranno estratte le icone.
[in] nIconIndex
Tipo: int
Specifica l'indice in base zero della prima icona da estrarre. Ad esempio, se questo valore è zero, la funzione estrae la prima icona nel file specificato.
Se questo valore è -1 e phiconLarge e phiconSmall sono entrambi NULL, 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 file .ico, il valore restituito è 1.
Se questo valore è un numero negativo e phiconLarge o phiconSmall non è NULL, la funzione inizia estraendo l'icona il cui identificatore di risorsa è uguale al valore assoluto di nIconIndex. Ad esempio, usare -3 per estrarre l'icona il cui identificatore di risorsa è 3.
[out] phiconLarge
Tipo: HICON*
Puntatore a una matrice di handle icona che riceve handle per le icone di grandi dimensioni estratte dal file. Se questo parametro è NULL, non vengono estratte icone di grandi dimensioni dal file.
[out] phiconSmall
Tipo: HICON*
Puntatore a una matrice di handle icona che riceve handle per le piccole icone estratte dal file. Se questo parametro è NULL, non vengono estratte icone piccole dal file.
nIcons
Tipo: UINT
Numero di icone da estrarre dal file.
Valore restituito
Tipo: UINT
Se il parametro nIconIndex
Se il parametro nIconIndex è qualsiasi valore diverso da -1 e phiconLarge o phiconSmall non è NULL, il valore restituito è il numero di icone estratte correttamente dal file.
Nota
Se la funzione rileva un errore, restituisce UINT_MAX. In questo caso, è possibile chiamare GetLastError per recuperare il codice di errore. Ad esempio, questa funzione restituisce
Osservazioni
Quando non sono più necessari, è necessario eliminare tutte le icone estratte da ExtractIconEx chiamando la funzione DestroyIcon.
Per recuperare le dimensioni delle icone grandi e piccole, usare questa funzione con i flag SM_CXICON, SM_CYICON, SM_CXSMICON e SM_CYSMICON.
Nota
L'intestazione shellapi.h definisce ExtractIconEx 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) |