[R] progression _RecFileListToArray
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] progression _RecFileListToArray
Bonjour,
Ma question est relativement simple, est-ce qu'il existe un moyen de créer une "barre de progression" lié à cette fonction ?
L'idée étant que quand je la lance sur un gros dossier, je puisse m'assurer que cela avance.
Merci pour vos idées et votre aide.
Ma question est relativement simple, est-ce qu'il existe un moyen de créer une "barre de progression" lié à cette fonction ?
L'idée étant que quand je la lance sur un gros dossier, je puisse m'assurer que cela avance.
Merci pour vos idées et votre aide.
Modifié en dernier par Autonoob le mar. 09 août 2011 08:21, modifié 1 fois.
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Oui, cela est possible, il vous suffit d'intercaler dans le code de recherche une sorte de compteur qui fait bouger une ProgressBar.
Cela à déjà été vu sur une fonction similaire (faites une recherche sur le forum).
PS: N'envisagez pas une barre qui vous donnera une idée précise du temps restant, car cela est impossible vu que le nombre de fichiers/dossiers à chercher est inconnu. ^^
Cela à déjà été vu sur une fonction similaire (faites une recherche sur le forum).
PS: N'envisagez pas une barre qui vous donnera une idée précise du temps restant, car cela est impossible vu que le nombre de fichiers/dossiers à chercher est inconnu. ^^
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Comme il faut bien établir une comparaison quelque part (quand la progressbar est-elle à 50 ou 100% ?) je suis très curieux de savoir quel genre de compteur on utilise et avec quelle variable ^^Tlem a écrit : le nombre de fichiers/dossiers à chercher est inconnu. ^^
Le array[0] ne semble pas utilisable dans une recherche thématique récursive
Cherché partout => pas trouvé... mais la réponse m'intéresse donc +1 pour la question
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- PandiPanda
- Membre émérite

- Messages : 656
- Enregistré le : mar. 19 juil. 2011 14:03
- Localisation : Bruxelles
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
et ceci? DirGetSize()
Code : Tout sélectionner
#Include <Array.au3>
$pathFile=@ScriptDir&"\"
Local $nArray=DirGetSize($pathFile,1)
_ArrayDisplay($nArray)La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
- matwachich
- Membre émérite

- Messages : 986
- Enregistré le : lun. 19 oct. 2009 04:04
- Localisation : Algérie
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Ca prendra du temps, surtout si vous faites un DirGetSize sur une racine de lecteur, sinon, pour un nombre réduit de fichiers, ça peut marcher.
Sortons VW du coté obscure! - La curiosité est un vilain défaut! Cliquez ici
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Ben, heuuu, tout simplement il faut ce la jouer à la Microsoft ...
C'est à dire, une barre de progression qui va (par exemple) de gauche à droite puis une fois arrivé au bout, reprend à zéro.
Sinon il avait été proposé une barre qui va de gauche à droite puis de droite à gauche et ainsi de suite.
Je recherche le sujet, puis j'édite.
Edit : C'est marrant comme les idées persistent :
http://www.autoitscript.fr/forum/viewto ... 108#p35108
http://www.autoitscript.fr/forum/viewto ... 416#p32416
http://www.autoitscript.fr/forum/viewto ... 161#p31161
C'est à dire, une barre de progression qui va (par exemple) de gauche à droite puis une fois arrivé au bout, reprend à zéro.
Sinon il avait été proposé une barre qui va de gauche à droite puis de droite à gauche et ainsi de suite.
Edit : C'est marrant comme les idées persistent :
http://www.autoitscript.fr/forum/viewto ... 108#p35108
http://www.autoitscript.fr/forum/viewto ... 416#p32416
http://www.autoitscript.fr/forum/viewto ... 161#p31161
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Ah ok un machin animé pour faire joli alors
désolé je croyais qu'il était question de barre de progression
Ces fausses barres Microsoft ressemblent quand même pas mal à du foutage de g... avec leurs "patientez, ça va prendre quelques minutes..." , en fait le bazar animé c'est juste pour dire "c'est long mais rassurez-vous votre ordi n'a pas planté"
Ces fausses barres Microsoft ressemblent quand même pas mal à du foutage de g... avec leurs "patientez, ça va prendre quelques minutes..." , en fait le bazar animé c'est juste pour dire "c'est long mais rassurez-vous votre ordi n'a pas planté"
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
C'est ce qui est demandé ...
Autonoob a écrit :L'idée étant que quand je la lance sur un gros dossier, je puisse m'assurer que cela avance
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Moui... mais bof ça montrera que c'est "en cours", pas que ça "avance"
Dans ce cas pourquoi s'emm... avec une progressbar ? un petit clignotant lumineux ou une petite animation ferait aussi bien l'affaire, comme ces icones animées Microsoft dans la fenêtre de copie de fichiers
Dans ce cas pourquoi s'emm... avec une progressbar ? un petit clignotant lumineux ou une petite animation ferait aussi bien l'affaire, comme ces icones animées Microsoft dans la fenêtre de copie de fichiers
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
Oui et non, car pour que la barre 'bouge', il faut que le code suive son chemin et donc on peut considérer qu'il 'avance'.mikell a écrit :ça montrera que c'est "en cours", pas que ça "avance"
Si le code 'avance', la barre 'bouge', donc ça avance. ^^
Maintenant, on peut en discuter des heures, tout est une question de point de vue.
Oui, mais ce n'est pas ce qui est demandé.mikell a écrit : un petit clignotant lumineux ou un petit avi ferait aussi bien l'affaire
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
J'y avais bien pensé, mais dans le cas présent, il n'est pas fait allusion de la copie de fichiers/dossiers, mais bien de l'utilisation de la fonction _RecFileListToArray (afin sans doute d'exploiter la liste pour une utilisation définie).
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [..] progression _RecFileListToArray
tlem, en effet je récupère la liste des fichiers pour ensuite tester la date de création de chaque fichier et supprimer les fichiers trop vieux.
Le problème étant que j'attend le retour de la fonction, donc c'est dans la fonction qu'il faudrait ajouter quelquechose.
EDIT : Petite question supplémentaire qui permettrait de contourner le problème, existe-t-il un moyen plus rapide que recfilelisttoarray pour gérer le contenu d'une arborescence ? l'idée étant de faire de l'incrémentiel en indexant les contenus ce qui serait surement plus rapide.
Le problème étant que j'attend le retour de la fonction, donc c'est dans la fonction qu'il faudrait ajouter quelquechose.
EDIT : Petite question supplémentaire qui permettrait de contourner le problème, existe-t-il un moyen plus rapide que recfilelisttoarray pour gérer le contenu d'une arborescence ? l'idée étant de faire de l'incrémentiel en indexant les contenus ce qui serait surement plus rapide.
Re: [..] progression _RecFileListToArray
Pour faciliter la compréhension j'ajoute le code.
Si vous avez une autre idée pour faire la même chose ou pour optimiser
EDIT : Suppression du code puisque non optimisé
Si vous avez une autre idée pour faire la même chose ou pour optimiser
EDIT : Suppression du code puisque non optimisé
Modifié en dernier par Autonoob le mar. 09 août 2011 08:19, modifié 1 fois.
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] progression _RecFileListToArray
La fonction _RecFileListToArray est la plus rapide que je connais pour faire ce qu'elle est sensé faire.
Dans votre cas, la meilleure solution serait de reprendre le code d'une fonction similaire mais plus simple (voir sur le forum) et de modifier le code pour faire en sorte de rajouter la progression (fictive) ainsi que le traitement simultané que vous voulez appliquer à vos fichiers.
La recherche récursive a été abordée plusieurs fois ainsi que pa partie affichage de quelque chose pour signaler que le traitement est en cours.
Quelques recherches sur le forum vous donnerons une grande partie des solutions.
Dans votre cas, la meilleure solution serait de reprendre le code d'une fonction similaire mais plus simple (voir sur le forum) et de modifier le code pour faire en sorte de rajouter la progression (fictive) ainsi que le traitement simultané que vous voulez appliquer à vos fichiers.
La recherche récursive a été abordée plusieurs fois ainsi que pa partie affichage de quelque chose pour signaler que le traitement est en cours.
Quelques recherches sur le forum vous donnerons une grande partie des solutions.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [..] progression _RecFileListToArray
tlem, si je comprend bien le seul moyen et de recréer un filelisttoarray qui intégrerait l'affichage ?
Re: [..] progression _RecFileListToArray
C'est exact, et plutot que d'attendre que la fonction soit terminée et retourne un array, pourquoi ne pas tester simultanément? (A chaque fichier on teste sa date, si c'est trop vieux on le supprime.)
Vous pourrez alors faire une barre de progression du nombre de fichier supprimés ou qq chose comme ca.
Vous pourrez alors faire une barre de progression du nombre de fichier supprimés ou qq chose comme ca.
Re: [..] progression _RecFileListToArray
arf, je pense que tout cela va dépasser mon petit niveau, je vais quand même me pencher sur le souci et je vous tiens informé.
Merci de vos conseils
Merci de vos conseils
Re: [..] progression _RecFileListToArray
Bonjour,
C'est réglé, après simplification de la fonction recfilelisttoarray c'est nettement plus rapide, reste encore certains détail à régler mais c'est fonctionnel.
Merci à tous
C'est réglé, après simplification de la fonction recfilelisttoarray c'est nettement plus rapide, reste encore certains détail à régler mais c'est fonctionnel.
Merci à tous



