Extraction des miniatures des fichiers

Soyez le premier à donner votre avis sur cette source.

Vue 15 048 fois - Téléchargée 1 597 fois

Description

Sous ce nom un peu étrange, une fonction dont le but est simple :
récupérer en VB une miniature d'un fichier...

on prend en fait la miniature générée pour l'explorateur Windows...
ce qui implique que la liste des fichiers supplémentaires qui pourront avoir une miniature...
dépend de votre système...

par defaut, les images (ICO/BMP/JPG/GIF) auront des miniatures, les .AVI également

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
95
Date d'inscription
lundi 9 juin 2003
Statut
Membre
Dernière intervention
2 juin 2010

Vais devoir reprendre mes recherches alors.
Ou alors ajouter une capture d'image depuis un de
mes projets ou je me cale ou je veux sur la vidéo.

Merci pour la réponse Rey ;-)
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
Salut l'ami Belge,

le 260 ?
non, c'est la taille du buffer...
cf:
http://msdn.microsoft.com/en-us/library/bb761846(v=vs.85).aspx

Tu voudrais voir une autre image de thumbnail ? calé à un autre moment de la vidéo ?
cela est peut être un réglage dans la registry...

pas dans ma source, en tous cas.

@+ l'ami
Messages postés
95
Date d'inscription
lundi 9 juin 2003
Statut
Membre
Dernière intervention
2 juin 2010

Déterrage forcé mais qui en ravira d'autres ;-)

Salut Rey,

Bien que tout fonctionne nickel il y a une chose que je ne parviens pas à comprendre.
Avec des vidéos :
Je clique un fichier --> Image OK
Je clique un autre --> Image OK
Je reviens sur la première --> Image OK et identique à la première (logique), ce qui me laisse penser que t'as mis une valeur fixe pour aller chercher cette image. La question est ou est cette valeur ? En tout cas moi je ne la trouve pas. Le but choisir une autre si celle-ci ne me convient pas.

J'ai d'abord penser que c'était le "260" de :
oExtract.GetLocation sFile, 260, 0, lpSize, 32, eFlag
Mais visiblement c'est pas ça.

Merci pour les réponses Master ;-)
Dav.
Messages postés
200
Date d'inscription
jeudi 26 février 2004
Statut
Membre
Dernière intervention
30 juin 2008

slt renfield,

tres bonne source, je voulais justement comprendre la gestion des miniatures des fichiers videos.

Si je peux me permettre, je mettrai un objet image a la place de la picturebox afin que l'image qu'elle contient soit redimensionnee.

Private Sub CcFile_Click()
With CcFile
If .ListIndex <> -1 Then
Set Image1.Picture = GetThumbNail(.Path & "" & .List(.ListIndex), CcPicPreview.Width, CcPicPreview.Height)
End If
End With
End Sub

Mais le principe reste le même.

salutations, zeunz.
Messages postés
2
Date d'inscription
mardi 23 janvier 2007
Statut
Membre
Dernière intervention
5 octobre 2007

Dear Renfield,

The other source works fine on the same Windows 2000 test machine. The part that executes similar code is:

If pidl <> 0 Then
'on extrait la miniature de fichier
Set getThumbnail = item.GetUIObjectOf(0&, 1&, pidl, uuidIExtractImage, prgf)
Else
'sinon du dossier parent
Set getThumbnail = item.CreateViewObject(0&, uuidIExtractImage)
End If

In this code, I tested the call to GetUIObjectOf, that works good. In what situation should I reach the call to CreateViewObject? Would it be possible to rewrite the GetThumbNail function in "EXTRACTION DES MINIATURES DES FICHIERS", so that it does GetUIObjectOf instead of the problem call to BindToObject(IExtractImage)? I would prefer to use the GetUIObjectOf method, but it is a problem for me to change the structure of my program so that it matches the other sample that you provide - I would prefer to leave the parameters of GetThumbnail same and only change it internally.

Finally, I found a peculiarity while testing on my Windows 2000 testbed. I happen to click on the shortcut "@Source telecharge depuis ce lien.url" in the test folder and to my surprise the Extract method causes a MessageBox to appear. I can reproduce the same in the second program, see screenshot:
http://www.berend.com/images/screenshot.png

Is this something that you also encountered, could there be a way to surpress it? My program needs to run on a server, so the MessageBox is inconvenient.

Again thanks for providing the very accessible VB6 sample code to a difficult-to-understand Windows interface,

Best regards,


Berend
Afficher les 42 commentaires

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.