Сборник по задачам и примерам Assembler



       

Поиск файлов с помощью функции SearchPath - часть 2


HANDLE FindFirstFiletLPCTSTR lpFileName. LPWIN32_FIND_DATA lpFindFileData): Имя файла может содержать символы шаблона * и ?. Кроме того, имя может Вырожать путь, с которого нужно начинать поиск. Выше, при знакомстве с функциями MS DOS для работы файлами, имеющими длинные имена, приводилось Иписание структуры WIN32_FIND_DATA и ее полей.

В случае успеха функция FindFirstFile заполняет поля структуры WIN32_FIND_ DATA и возвращает значение дескриптора внутренней структуры в памяти, который впоследствии может быть использован функциями FindNextFile или FindClose. В случае неудачи функция не изменяет содержимое структуры WIN32_FIND_DATA и возвращает значение
INVALID_HANDLE_VALUE (EAX=-llo=Offffffffh). 1 Проанализировав результаты поиска, программа может продолжить или прекратить его. Для продолжения поиска необходимо вызвать функцию Fi ndNExtFi I e. I BOOL FindNextFile

( HANDLE hFindFile. LPWIN32_FIND_DATA lpFindFileData ):

В качестве параметров используются дескриптор, полученный в регистре ЕАХ в результате поиска функцией FindFirstFile, и указатель на экземпляр структуры WIN32_FIND_DATA. В случае успеха функция FindNextFile возвращает ненулевое значение в регистре ЕАХ и заполняет структуру WIN32FINDDATA. При неудаче —

I ЕАХ = 0.

Для продолжения поиска при неизменных исходных параметрах поиска функ-

ция FindNextFile вызывается циклически.

Для окончания процесса поиска необходимо вызвать функцию FindClose.

BOOL FindCloset HANDLE hFindFile ):

i Функция FindClose имеет один параметр — дескриптор, полученный функци-Нй FindFirstFile в начале поиска. В случае успеха функция FindClose возвращает Е ненулевое значение в регистре ЕАХ, при неудаче — ЕАХ = 0.




Содержание  Назад  Вперед