Récupération des images système depuis leur extension ou leur contenu [module de classe]

Soyez le premier à donner votre avis sur cette source.

Vue 3 970 fois - Téléchargée 369 fois


Description

J'avais besoin d'une classe permettant de générer rapidement les images windows de type SdtPicture sans avoir à dessiner sur un hDC pour l'enregistrer ensuite

je partage le résultat, en espérant que çà vous soit utile

l'utilisation est très simple (cf code ci-dessous), à double usage :

1. récupération de l'icône associée à un fichier, un dossier ou un drive (exemple : l'étoile sur le dossier favoris de win xp)
2. l'extraction de toutes les icônes attachées à un exe, dll, ocx...

pour cette 2e partie je l'ai ajoutée uniquement parce que j'avais terminé le principal de la classe, mais ce n'était pas le but de départ

n'hésitez pas à remonter vos avis, idées, etc... ;)

Source / Exemple :


Private AfSysImg As New AfCls_SysImage
Private Sub Exemple1()
    Dim sKey As String
    sKey = AfSysImg.GetKey(Txt_FileName.Text)
    If Len(sKey) Then
        AfSysImg.DrawPicture sKey, Me.hDC, 50, 50
        Image1.Picture = AfSysImg.GetPicture(sKey)
    End If
End Sub

'-----------------------------------------------------------

Private Sub Exemple2()
    Dim AfImages As New AfCls_SysImage, i As Integer
    With AfImages
        AfImages.KeepHistory = False
        For i = 0 To .CountTotalImages("c:\windows\explorer.exe") - 1
            SavePicture .GetIndexedPicture("c:\windows\explorer.exe", i), App.Path & "\explorer_" & i & ".bmp"
        Next i
    End With
    Set AfImages = Nothing
End Sub

Conclusion :


testé uniquement sous XP

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
51
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
23 avril 2010

Il est ou le .sln ?


sinon sous vb2008Express moi je fais ça: (Si ça peut servir a quelqu'un)

Sub ExtractIcon(ByVal CheminFichier As String, ByVal MonBouton As Button)

IconEx = Icon.ExtractAssociatedIcon(CheminFichier)
MonBouton.Image = IconEx.ToBitmap

End Sub
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
SaveAsBMP dans le AfCls_SysImage.cls
Messages postés
9
Date d'inscription
jeudi 13 mars 2008
Statut
Membre
Dernière intervention
15 avril 2008

Salut,

Tu dis : "Est aussi montré la sauvegarde directe de l'image sur le disque (vers un "dossier existant)."
J'vois pas ou ?

Gagnerait a avoir un browser pour la recherche de fichiers

Sinon, bon travail !

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.