ExtractIconExW, fonction (shellapi.h)
La fonction ExtractIconEx crée un tableau de handles à des icônes volumineuses ou petites extraites du fichier exécutable, dll ou fichier d’icône spécifié.
Syntaxe
UINT ExtractIconExW(
[in] LPCWSTR lpszFile,
[in] int nIconIndex,
[out] HICON *phiconLarge,
[out] HICON *phiconSmall,
UINT nIcons
);
Paramètres
[in] lpszFile
Type : LPCTSTR
Pointeur vers une chaîne terminée par null qui spécifie le nom d’un fichier exécutable, d’une DLL ou d’un fichier d’icône à partir duquel les icônes seront extraites.
[in] nIconIndex
Type : int
Spécifie l’index de base zéro de la première icône à extraire. Par exemple, si cette valeur est égale à zéro, la fonction extrait la première icône dans le fichier spécifié.
Si cette valeur est –1 et phiconLarge et phiconSmall sont toutes les deux NULL, la fonction retourne le nombre total d’icônes dans le fichier spécifié. Si le fichier est un fichier exécutable ou une DLL, la valeur de retour est le nombre de ressources RT_GROUP_ICON. Si le fichier est un fichier .ico, la valeur de retour est 1.
Si cette valeur est un nombre négatif et que phiconLarge ou phiconSmall n’est pas NULL, la fonction commence par extraire l’icône dont l’identificateur de ressource est égal à la valeur absolue de nIconIndex. Par exemple, utilisez -3 pour extraire l’icône dont l’identificateur de ressource est 3.
[out] phiconLarge
Type : HICON*
Pointeur vers un tableau de poignées d’icônes qui reçoit des handles vers les grandes icônes extraites du fichier. Si ce paramètre est null, aucune icône volumineuse n’est extraite du fichier.
[out] phiconSmall
Type : HICON*
Pointeur vers un tableau de poignées d’icônes qui reçoit des handles vers les petites icônes extraites du fichier. Si ce paramètre est NULL, aucune petite icône n’est extraite du fichier.
nIcons
Type : uiNT
Nombre d’icônes à extraire du fichier.
Valeur de retour
Type : uiNT
Si le paramètre nIconIndex
Si le paramètre nIconIndex
Note
Si la fonction rencontre une erreur, elle retourne UINT_MAX. Dans ce cas, vous pouvez appeler GetLastError pour récupérer le code d’erreur. Par exemple, cette fonction retourne UINT_MAX si le fichier spécifié par lpszFile est introuvable alors que le paramètre nIconIndex n’est aucune valeur autre que -1 et que phiconLarge ou phiconSmall n’est pas NULL. Dans ce cas, GetLastError retourne ERROR_FILE_NOT_FOUND (2).
Remarques
Lorsqu’elles ne sont plus nécessaires, vous devez détruire toutes les icônes extraites par ExtractIconEx en appelant la fonction DestroyIcon.
Pour récupérer les dimensions des icônes volumineuses et petites, utilisez cette fonction avec les indicateurs SM_CXICON, SM_CYICON, SM_CXSMICON et SM_CYSMICON.
Note
L’en-tête shellapi.h définit ExtractIconEx comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | shellapi.h |
DLL | Shell32.dll |
ensemble d’API | ext-ms-win-shell-shell32-l1-2-1 (introduit dans Windows 10, version 10.0.10240) |