Functions > FileDirDisk >


FileFindFirstFile

Cr�e un handle de recherche, d�fini par un chemin et un filtre de fichiers.

FileFindFirstFile ( "filename" )

Param�tre

filename Le chemin et le filtre de fichiers (les caract�res g�n�riques * et ? sont pris en charge - Voir Remarques).

Valeur de retour

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.

Remarques

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.

En relation

FileClose, FileFindNextFile

Exemple

#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