Icones fichiers windows vb.net 2003 [Résolu]

cs_eldim 961 Messages postés lundi 30 mai 2005Date d'inscription 21 août 2014 Dernière intervention - 1 mars 2006 à 15:56 - Dernière réponse : cs_eldim 961 Messages postés lundi 30 mai 2005Date d'inscription 21 août 2014 Dernière intervention
- 1 mars 2006 à 17:28
Bonjour,

Comment peut-on récupérer les icones des fichiers (utilisées par l'explorer) et les intégrés à un listview en cours d'exécution ?
Afficher la suite 

4 réponses

Meilleure réponse
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 1 mars 2006 à 17:01
3
Merci
Voilà pourquoi il faut auusi toujours présiser le langage et sa version dans la question.
Pour vs2003, ceci devrais marcher:

Imports System.Runtime.InteropServices

[...]

Private Declare Function ShGetFileInfo Lib "shell32.dll" Alias "SHGetFileInfoA" (ByVal Path As String, ByVal DwAttributes As Integer, ByRef ShInfo As ShFileInfo, ByVal SizeFileInfo As Integer, ByVal Flags As Integer) As IntPtr
Private Const ShGetFileInfo_Icon As Short = &H100S
<Runtime.InteropServices.StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi)> Public Structure ShFileInfo
Dim HIcon As IntPtr
Dim Icon As Integer
Dim Attributes As Integer
<Runtime.InteropServices.MarshalAs(UnmanagedType.ByValTStr, SizeConst:=260)> Public DisplayName As String
<Runtime.InteropServices.MarshalAs(UnmanagedType.ByValTStr, SizeConst:=80)> Public TypeName As String
End Structure
Public Enum IconSize As Short
Small = &H1S
Large = &H0S
End Enum
Public Function GetIcon(ByVal FileName As String, ByVal Size As IconSize) As System.Drawing.Icon
Try
Dim ShInfo As New ShFileInfo
Call ShGetFileInfo(FileName, 0, ShInfo, Marshal.SizeOf(ShInfo), ShGetFileInfo_Icon Or Size)
Return System.Drawing.Icon.FromHandle(ShInfo.HIcon)
Catch
Return Nothing
End Try
End Function

[...]

'Pour appeller la fonction:
Dim Ico As System.Drawing.Icon = GetIcon("C:\WINDOWS\explorer.exe", IconSize.Small)

Kenji
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.

Merci Charles Racaud 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 119 internautes ce mois-ci

Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 1 mars 2006 à 16:34
0
Merci
Salut,

ExtractAssociatedIcon de retourne l'icône associer au fichier.
Par example:
Dim Ico As System.Drawing.Icon = System.Drawing.Icon.ExtractAssociatedIcon("C:\WINDOWS\explorer.exe")

Ensuite, tu ajoute l'icône à l'image list de ta listview et tu crée un élément avec cette image.

Kenji
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
cs_eldim 961 Messages postés lundi 30 mai 2005Date d'inscription 21 août 2014 Dernière intervention - 1 mars 2006 à 16:45
0
Merci
Merci de ta réponse
mais
J'ai bien spécifié vb.net 2003 pas 2005
cs_eldim 961 Messages postés lundi 30 mai 2005Date d'inscription 21 août 2014 Dernière intervention - 1 mars 2006 à 17:28
0
Merci
Impeccable merci

ça ralenti pas mal les traitements snif...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.