Lister contenu des dossier *.zip

toto93350 Messages postés 9 Date d'inscription dimanche 7 juin 2009 Statut Membre Dernière intervention 1 mai 2011 - 5 mars 2010 à 04:14
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 17 mars 2010 à 17:14
Bonjour à tous

Dans mon projet je manipule énormément de fichiers compressés et j'utilise le composant abbrevia. Afin de faire divers traitements(tri, etc ...) j'exporte le chemin des fichiers compressés (que je récupère via abbrevia) vers une listbox. Mon projet comporte donc de nombreuses boucles FOR(For j := 0 To Pred(Zp.Count)Do LB2.Items.Add(Zp.Items[j].FileName)).
Je souhaiterai améliorer les performances (rapidité) de mon projet en m'affranchissant de ces boucles FOR et donc de passer par une gestion "globale" (un truc du genre "LB2.Items.AddStrings(LB1.Items)") des fichiers compressés et non pas item par item (apparemment abbrevia ne permet pas de faire cette gestion globale car mes nombreuses tentatives sont sans succès).

Alors j'essaie autrement et je tente désespérément de lister les fichiers compressés par la fonction suivante :

function ListFic(Src,Ext:String; LB:TListBox):Integer;
var Info:TSearchRec;
begin
src := IncludeTrailingPathDelimiter(src);
If FindFirst(Src + Ext, faAnyFile, Info) = 0
Then Repeat
If ((Info.Attr and faDirectory) = 0)
Then LB.Items.Add(Src+Info.FindData.cFileName);
Until FindNext(Info) <> 0;
FindClose(Info);
Result := LB.Count;
end;

mais là aussi sans succès : elle ne liste que les fichiers non compressés.

Voilà mes questions : y a t il une fonction de l'API WINDOWS qui permette de lister les fichiers compressés, si oui laquelle et comment faire ?
Ou encore quelles modifications faut-il apporter à ma fonction pour qu'elle me liste mes fichiers compressés ?

Merci d'avance pour votre aide. Bien sur je continue mes recherches ...

1 réponse

cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 14
17 mars 2010 à 17:14
Bonjour,

utilises un composant pour dézipper

cantador
0