OVH Cloud OVH Cloud

Problème de performances ( encore moi)

5 réponses
Avatar
Vincent
Bonjour,

Quand j'utilise explorer, quand je vais dans un répertoire contenant des
photos, les miniatures de ces photos
s'affichent en 5 secondes ! ( les thumbnails)

Quand dans mon programme, je récupère ces mêmes(?) imagettes avec
GetThumbnailImage, il faut 30 secondes !
( si 100 images .... 1 minute 30, explorer 10 secondes !)

Comment fait explorer pour aller si vite ? comment puis-je aller aussi vite
?

j'utilise une listview, est-ce le bon élément à utiliser ? puis-je utiliser
un bout d'explorer ?(activeX ou un truc comme ça ?)
Une idée ?

Merci

Vincent

ps : en plus explorer, affiche les miniatures sans les déformer, alors que
je suis obligé de de trafiquer un truc pour les afficher
dans la listview sans les déformer (mais avec ou sans trafiquer le problème
de temps existe ).

5 réponses

Avatar
Sébastien HOUZET
Je pense que explorer gére aussi un cache permettant d'afficher plus
rapidement les images.

Sinon, je trouve aussi que GetThumbnailImage n'est pas très performante
(qualité et rapidité).
Par contre je ne connais pas de solution, dsl.

"Vincent" a écrit dans le message de news:

Bonjour,

Quand j'utilise explorer, quand je vais dans un répertoire contenant des
photos, les miniatures de ces photos
s'affichent en 5 secondes ! ( les thumbnails)

Quand dans mon programme, je récupère ces mêmes(?) imagettes avec
GetThumbnailImage, il faut 30 secondes !
( si 100 images .... 1 minute 30, explorer 10 secondes !)

Comment fait explorer pour aller si vite ? comment puis-je aller aussi
vite ?

j'utilise une listview, est-ce le bon élément à utiliser ? puis-je
utiliser un bout d'explorer ?(activeX ou un truc comme ça ?)
Une idée ?

Merci

Vincent

ps : en plus explorer, affiche les miniatures sans les déformer, alors que
je suis obligé de de trafiquer un truc pour les afficher
dans la listview sans les déformer (mais avec ou sans trafiquer le
problème de temps existe ).



Avatar
hell
"Sébastien HOUZET" a écrit dans le message de
news:%
Je pense que explorer gére aussi un cache permettant d'afficher plus
rapidement les images.

Sinon, je trouve aussi que GetThumbnailImage n'est pas très performante
(qualité et rapidité).
Par contre je ne connais pas de solution, dsl.




Peut-etre aussi qu'explorer n'est pas programmé en C# mais en C++ d'ou cette
difference. Ceci dit je pense aussi qu'il doit y avoir un cache quelque
part!
Avatar
Vincent
j'ai une autre idée, mais plutôt tirée pas les cheveux :

je lance plusieurs threads qui chacun récupère la vignette d'une photo.
Je ne sais pas si ca peut être plus rapide et surtout comment les récupérer
!?

vincent


"hell" a écrit dans le message de
news:
"Sébastien HOUZET" a écrit dans le message de
news:%
Je pense que explorer gére aussi un cache permettant d'afficher plus
rapidement les images.

Sinon, je trouve aussi que GetThumbnailImage n'est pas très performante
(qualité et rapidité).
Par contre je ne connais pas de solution, dsl.




Peut-etre aussi qu'explorer n'est pas programmé en C# mais en C++ d'ou
cette
difference. Ceci dit je pense aussi qu'il doit y avoir un cache quelque
part!




Avatar
Boris Sargos
Vincent a écrit :
j'ai une autre idée, mais plutôt tirée pas les cheveux :

je lance plusieurs threads qui chacun récupère la vignette d'une photo.
Je ne sais pas si ca peut être plus rapide et surtout comment les récupérer
!?

vincent


"hell" a écrit dans le message de
news:

"Sébastien HOUZET" a écrit dans le message de
news:%

Je pense que explorer gére aussi un cache permettant d'afficher plus
rapidement les images.

Sinon, je trouve aussi que GetThumbnailImage n'est pas très performante
(qualité et rapidité).
Par contre je ne connais pas de solution, dsl.




Peut-etre aussi qu'explorer n'est pas programmé en C# mais en C++ d'ou
cette
difference. Ceci dit je pense aussi qu'il doit y avoir un cache quelque
part!









Effectivement, c'est tiré par les cheveux !
Non, je dirais comme Zoury : un cache qui stocke les photos.
Une petite astuce cependant : essaye de stocker tes miniatures dans un
ImageList. Tu gagneras beaucoup de temps d'exécution (mais je ne sais
pas pourquoi).
Avatar
Alexandre Roba
Salut a tous,

En fait il faut savoir que windows cree un fichier cache qui pour chaque
repertoire contenant des images va cacher les "thumbnails" des photos
contenues dans le repertoire... Lorsque Explorer affiche les thumbnails il
utilise ces miniatures.

LA fonction GetThumbnailImage n'utilise pas ces fichiers caches...

Bien à toi,

Alexandre Roba
.NET architect

"Vincent" a écrit :

j'ai une autre idée, mais plutôt tirée pas les cheveux :

je lance plusieurs threads qui chacun récupère la vignette d'une photo.
Je ne sais pas si ca peut être plus rapide et surtout comment les récupérer
!?

vincent


"hell" a écrit dans le message de
news:
> "Sébastien HOUZET" a écrit dans le message de
> news:%
>> Je pense que explorer gére aussi un cache permettant d'afficher plus
>> rapidement les images.
>>
>> Sinon, je trouve aussi que GetThumbnailImage n'est pas très performante
>> (qualité et rapidité).
>> Par contre je ne connais pas de solution, dsl.
>>
>
> Peut-etre aussi qu'explorer n'est pas programmé en C# mais en C++ d'ou
> cette
> difference. Ceci dit je pense aussi qu'il doit y avoir un cache quelque
> part!
>
>