Crée un handle de recherche, défini par un chemin et un filtre de fichiers.
FileFindFirstFile ( "filename" )
filename | Le chemin et le filtre de fichiers (les caractères génériques * et ? sont pris en charge - Voir Remarques). |
Succès: | Retourne le handle de recherche à utiliser avec la fonction FileFindNextFile. |
Échec: | Retourne -1 si rien n'est trouvé. La valeur du flag @error est 1 seulement si le dossier est vide. |
La chaîne de recherche n'est pas sensible à la casse.
Caractères spéciaux: En général, * représente zéro ou plusieurs caractères, et ? représente zéro ou un caractère. Si votre chaîne de recherche de fichier ne contient que de caractère générique (ou est "*.*"), alors consultez l'exemple ci-dessous pour la valeur de retour!
Vous pouvez utiliser un seul caractère spécial dans la partie nom de fichier ou dans la partie d'extension, par exemple : a*.b?.
Lorsque vous utilisez 3 caractères pour l'extension du nom, toute extension à partir de ces 3 caractères sera acceptée. Exemple "*.log" correspondra à "test.log_1" (non décrit dans la documentation de Microsoft).
Lorsque vous avez terminé la recherche avec une fonction FileFind..., vous devez utiliser FileClose() pour libérer le handle de recherche.
Le nom du répertoire sera retourné en accord avec les caractères génériques s'il y en a.
En raison de l'API Windows sous-jacente utilisé (FindFirstFile), cette fonction cherche actuellement à la fois les noms de fichier courts et longs. Si vous obtenez des résultats inattendus, vérifiez que ce ne sont pas des noms de fichiers courts qui réalisent la correspondance.
#include <MsgBoxConstants.au3> Example() Func Example() ; Assigne une variable locale avec le handle de recherche de tous les fichiers dans le répertoire courant. Local $hSearch = FileFindFirstFile("*.*") ; Vérifie si la recherche a réussie, sinon affiche un message et retourne Faux. If $hSearch = -1 Then MsgBox($MB_SYSTEMMODAL, "", "Erreur: aucun fichier/répertoire ne correspond au motif de la recherche .") Return False EndIf ; Déclare une variable locale qui contiendra les noms de fichiers trouvés. Local $iResult = $IDOK, $sFileName = FileFindNextFile($hSearch) ; premier fichier While @error = 0 And $iResult = $IDOK ; Affiche le nom du fichier. $iResult = MsgBox(BitOR($MB_SYSTEMMODAL, $MB_OKCANCEL), "", "Fichier: " & $sFileName) ; Si l'utilisateur clique sur le bouton Cancel/Close, la boucle s'arrête. $sFileName = FileFindNextFile($hSearch) ; fichier suivant WEnd ; Ferme Le handle de recherche. FileClose($hSearch) EndFunc ;==>Example