Obtient des informations sur l'icône ou le curseur spécifié
#include <WinAPIIcons.au3>
_WinAPI_GetIconInfoEx ( $hIcon )
$hIcon | Handle de l'icône ou du curseur. Pour récupérer des informations sur une icône ou un curseur standard, utilisez les constanes $IDC_*. |
Succès: | Retourne le tableau qui contient les informations suivantes: [0] - Une valeur de 1 indique une icône, 0 un curseur. [1] - La coordonnée x du point actif du curseur. [2] - La coordonnée y du point actif du curseur. [3] - Le handle du bitmap masque de bits de l'icône. [4] - Le handle du bitmap couleur de l'icône. [5] - Les bits de la ressource icône ou curseur. [6] - Le chemin d'accès complet du module. [7] - Le chemin d'accès complet de la ressource. |
Échec: | Définit @error <> 0. |
_WinAPI_GetIconInfoEx() crée les bitmaps [3] et [4].
L'application appelante doit gérer ces bitmaps et les supprimer quand ils ne sont plus nécessaires.
Cette fonction nécessite Windows Vista ou une version ultérieure.
Consultez GetIconInfoEx dans la librairie MSDN.
#include <MsgBoxConstants.au3> #include <WinAPIIcons.au3> #include <WinAPIRes.au3> #include <WinAPISys.au3> If Number(_WinAPI_GetVersion()) < 6.0 Then MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), 'Erreur', 'Nécessite Windows Vista ou une version ultérieure.') Exit EndIf Local $hInstance = _WinAPI_LoadLibraryEx(@AutoItExe, $LOAD_LIBRARY_AS_DATAFILE) Local $hIcon = _WinAPI_LoadImage($hInstance, 99, $IMAGE_ICON, 0, 0, $LR_DEFAULTSIZE) Local $aInfo = _WinAPI_GetIconInfoEx($hIcon) If IsArray($aInfo) Then ConsoleWrite('Handle: ' & $hIcon & @CRLF) ConsoleWrite('Path: ' & $aInfo[6] & @CRLF) ConsoleWrite('ID: ' & $aInfo[5] & @CRLF) For $i = 3 To 4 _WinAPI_DestroyIcon($aInfo[$i]) Next EndIf _WinAPI_FreeLibrary($hInstance) _WinAPI_DestroyIcon($hIcon)