Функция FileFindFirstFile

         Описание функции


FileFindFirstFile

Возвращает "дескриптор поиска", связанный с указанной строкой.

FileFindFirstFile ( "filename" )

Параметры

filename Путь и имя файла для поиска. (поддерживаются подстановочные символы * и ?)

Возвращаемое значение

Успех:Возвращает "дескриптор поиска" для дальнейшего использования в функции FileFindNextFile().
Ошибка:Возвращает -1, если произошла ошибка. Если каталог пуст, значение @error устанавливается равным 1.

Примечания

Строка для поиска не учитывает регистр.
Подстановочные символы (wildcards) маски: * означает 0 или более символов, а ? обозначает 0 или 1 символ. Если ваша строка для поиска содержит только маски (или "*.*"), то смотрите возвращаемые значения в примере ниже!

Можно использовать только один подстановочный символ в имени файла и один в его расширении, например a*.b?.
?? эквивалентно * (не указано в документации Microsoft).
Если используется 3-символьное расширение в строке поиска, то любое расширение, начинающееся с этих символов подходит под эту строку. Например, под маску "*.log" подпадает также файл "test.log_1" (не указано в документации Microsoft).

После окончания работы с функциями FileFind... необходимо закрыть дескриптор, возвращённый функцией FileFindFirstFile() с помощью FileClose() для освобождения ресурсов, выделенных дескриптору поиска.

Имена каталогов также возвращается в соответствии с маской (wildcards), если таковые имеются.

См. также

FileClose, FileFindNextFile

Пример

; Скрипт показывает имена всех файлов в текущей директории.
$hSearch = FileFindFirstFile("*.*") ; возвращает дескриптор поиска

; Проверка, является ли поиск успешным
If $hSearch = -1 Then
    MsgBox(4096, "Ошибка", "Ни один из файлов или каталогов не соответствует маске поиска")
    Exit
EndIf

While 1
    $sFile = FileFindNextFile($hSearch) ; возвращает имя следующего файла, начиная от первого до последнего
    If @error Then ExitLoop

    $iAnswer = MsgBox(1, "Следующий файл / каталог:", $sFile)
    If $iAnswer = 2 Then ExitLoop
WEnd

; Закрывает дескриптор поиска
FileClose($hSearch)