shell execute tout les fichiers d'un dossier avec la bonne extension les uns apres les autres

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
damad
Niveau 1
Niveau 1
Messages : 2
Enregistré le : ven. 13 avr. 2018 15:50
Status : Hors ligne

shell execute tout les fichiers d'un dossier avec la bonne extension les uns apres les autres

#1

Message par damad » ven. 13 avr. 2018 16:06

Bonjour,
je suis entrain de develloper mon premier script et j'avoue que je galere a trouver les infos:
je souhaite lancer un fichier d'un dossier quel que soit son nom, (pas de nom defini) qu'il execute mon scripte et qu'il passe au suivant quand c'est fini.

j'ai compris qu'il fallait faire une boucle cependant je ne comprend pas comment lancer un shell execute sur tout les fichier d'un dossier repondant a une extension.
merci d'avance
bonne journée

Avatar du membre
walkson
Modérateur
Modérateur
Messages : 571
Enregistré le : ven. 12 août 2011 18:49
Localisation : Essonne
Status : Hors ligne

Re: shell execute tout les fichiers d'un dossier avec la bonne extension les uns apres les autres

#2

Message par walkson » ven. 13 avr. 2018 17:09

Bonjour,
Comme ça ?
#include <Array.au3>
#include <File.au3>
$filepath = FileSelectFolder("choisir",@DesktopDir) ;choix du dossier
If @error Then Exit ;pas de choix on sort
$filter = "*.png"
$array = _FileListToArray($filepath,$filter, $FLTA_FILESFOLDERS ,True);tableau avec l'adresse des fichiers
If @error Then Exit  MsgBox(0,"","pas trouvé " & $filter)
_ArrayDisplay($array) ;pour voir le résultat
For $i = 1 To $array[0] ; boucle sur le tableau pour lire chaque ligne $array[0] contient le nb de lignes
ShellExecuteWait($array[$i]); exécute le fichier et attend sa fermeture
Next
 
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi

damad
Niveau 1
Niveau 1
Messages : 2
Enregistré le : ven. 13 avr. 2018 15:50
Status : Hors ligne

Re: shell execute tout les fichiers d'un dossier avec la bonne extension les uns apres les autres

#3

Message par damad » ven. 13 avr. 2018 18:19

c'est bien ce que je pensais il fallait creer une liste des fichier pour allez piocher dedans.. merci 100000 fois

Avatar du membre
walkson
Modérateur
Modérateur
Messages : 571
Enregistré le : ven. 12 août 2011 18:49
Localisation : Essonne
Status : Hors ligne

Re: shell execute tout les fichiers d'un dossier avec la bonne extension les uns apres les autres

#4

Message par walkson » ven. 13 avr. 2018 19:06

J'ai oublié de mettre If @error Then Exit MsgBox(0,"","pas trouvé " & $filter) sous la fonction _FileListToArray() car si l'extension n'est pas trouvé il y aura un bug fatal au niveau de $array[]

Si vous avez des sous dossiers, il faudra utiliser _FileListToArrayRec()
Et si vous voulez ouvrir l'extension par un programme précis, vous pouvez le faire par exemple comme ceci ShellExecuteWait( @ProgramFilesDir & "\paint.net\PaintDotNet.exe", $array[$i] )
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi

Répondre