Récupérer l'icone d'un fichier quelque soit son type
ChBaud
-
3 févr. 2000 à 16:15
binet1
Messages postés28Date d'inscriptionsamedi 26 février 2005StatutMembreDernière intervention 7 janvier 2009
-
27 nov. 2008 à 00:53
Je cherche encore et encore un moyen de récupérer l'icone d'un fichier (quelque soit le type de fichier) pour la réutiliser dans un controle ListView ou ListImage.
Salut
Je suis à la recherche de la même chose que toi, et je pense avoir trouvé la solution:
Il faut d'abord récupérer l'extension de ton fichier (par exemple .txt)
Ensuite, il faut rechercher, dans la base des registres, la clef:
HKEY_CLASSES_ROOT\.txt
Cette clef contient une valeur "(Défaut)" dont la donnée est, pour notre exemple, "txtfile"
il faut ensuite recherche la clef:
HKEY_CLASSES_ROOT\txtfile\DefaultIcon
Elle contient une valeur "(Défaut)" dont la donnée est :
"C:\Windows\System\Shell32.dll,-152"
C'est effectivement le fichier contenant l'icone des Documents textes, Le seul problème est la valeur -152
en effet, l'icône correspondant est, je crois, le 65ème contenu dans Shell32.dll
Il serait cependant préférable que tu vérifie tout ce que je t'ai dit ci-dessus.
J'attends de tes nouvelles.
spike93_fr
Messages postés1Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention 7 mars 2005 7 mars 2005 à 11:32
J'ai testé cette solution et celà ne sert a rien de rechercher dans cette direction puisque toutes les extensions ne fonctionnent pas de la même manière.
Par exemple, si on regarde la valeur par défaut de l'extension "*.pdf", il n'y a pas de defaultIcone associé à cette valeur.
En ce qui concerne votre problème, je suis en train de fouiller un peu partout pour construire une fonction qui fait le travail.
binet1
Messages postés28Date d'inscriptionsamedi 26 février 2005StatutMembreDernière intervention 7 janvier 2009 25 nov. 2008 à 21:34
voici un petit bout de code que j'utilise pour celà
dim icon as Icon
'ajouter l'icône
icon = icon.ExtractAssociatedIcon(file.FullName)
ImageList1.Images.Add(file.Extension, icon)
où file est est du type fileInfo récupéré à partir de la fonction GetFiles()
en espérant que ça peut être utile
Vous n’avez pas trouvé la réponse que vous recherchez ?