Операционные системы. Кручинин А.Ю. - 50 стр.

UptoLike

Составители: 

50
);
Через параметр lpFileName вы должны передать функции адрес строки,
содержащей путь к каталогу и шаблон для поиска. В шаблоне можно использовать
символы «?» и «*». Через параметр lpFindFileData следует передать адрес
структуры типа WIN32_FIND_DATA, в которую будет записана информация о
найденных файлах. Эта структура определена следующим образом:
Структура WIN32_FIND_DATA
typedef struct _WIN32_FIND_DATA
{
DWORD dwFileAttributes; // атрибуты файла
FILETIME ftCreationTime; // время создания файла
FILETIME ftLastAccessTime; // время доступа
FILETIME ftLastWriteTime; // время записи
DWORD nFileSizeHigh; // размер файла (старшее слово)
DWORD nFileSizeLow; // размер файла (младшее слово)
DWORD dwReserved0; // зарезервировано
DWORD dwReserved1; // зарезервировано
TCHAR cFileName[MAX_PATH]; // имя файла
TCHAR cAlternateFileName[14]; // альтернативное имя файла
} WIN32_FIND_DATA;
Если поиск завершился успешно, функция FindFirstFile возвращает
идентификатор поиска, который будет затем использован в цикле при вызове
функции FindNextFile. При ошибке возвращается значение
INVALID_HANDLE_VALUE. После вызова функции FindFirstFile вы должны
выполнять в цикле вызов функции FindNextFile:
Функция FindNextFile
BOOL FindNextFile
(
HANDLE hFindFile, // идентификатор поиска
LPWIN32_FIND_DATA lpFindFileData); // адрес структуры
// WIN32_FIND_DATA
);
Через параметр hFindFile этой функции следует передать идентификатор
поиска, полученный от функции FindFirstFile. Что же касается параметра
lpFindFileData, то через него вы должны передать адрес той же самой структуры
типа WIN32_FIND_DATA, что была использована при вызове функции
FindFirstFile.
Если функция FindNextFile завершилась успешно, она возвращает значение
TRUE. При ошибке возвращается значение FALSE. Код ошибки вы можете
получить от функции GetLastError. В том случае, когда были просмотрены все
файлы в каталоге, эта функция возвращает значение ERROR_NO_MORE_FILES. Вы
);

     Через параметр lpFileName вы должны передать функции адрес строки,
содержащей путь к каталогу и шаблон для поиска. В шаблоне можно использовать
символы «?» и «*». Через параметр lpFindFileData следует передать адрес
структуры типа WIN32_FIND_DATA, в которую будет записана информация о
найденных файлах. Эта структура определена следующим образом:

     Структура WIN32_FIND_DATA
typedef struct _WIN32_FIND_DATA
{
       DWORD dwFileAttributes;           // атрибуты файла
       FILETIME ftCreationTime;          // время создания файла
       FILETIME ftLastAccessTime;        // время доступа
       FILETIME ftLastWriteTime;         // время записи
       DWORD nFileSizeHigh;              // размер файла (старшее слово)
       DWORD nFileSizeLow;               // размер файла (младшее слово)
       DWORD dwReserved0;                // зарезервировано
       DWORD dwReserved1;                // зарезервировано
       TCHAR cFileName[MAX_PATH];        // имя файла
       TCHAR cAlternateFileName[14];     // альтернативное имя файла
} WIN32_FIND_DATA;

     Если поиск завершился успешно, функция FindFirstFile возвращает
идентификатор поиска, который будет затем использован в цикле при вызове
функции      FindNextFile.    При      ошибке    возвращается    значение
INVALID_HANDLE_VALUE. После вызова функции FindFirstFile вы должны
выполнять в цикле вызов функции FindNextFile:

     Функция FindNextFile
BOOL FindNextFile
(
     HANDLE hFindFile,                  // идентификатор поиска
     LPWIN32_FIND_DATA lpFindFileData); // адрес структуры
                                        // WIN32_FIND_DATA
);

     Через параметр hFindFile этой функции следует передать идентификатор
поиска, полученный от функции FindFirstFile. Что же касается параметра
lpFindFileData, то через него вы должны передать адрес той же самой структуры
типа WIN32_FIND_DATA, что была использована при вызове функции
FindFirstFile.
     Если функция FindNextFile завершилась успешно, она возвращает значение
TRUE. При ошибке возвращается значение FALSE. Код ошибки вы можете
получить от функции GetLastError. В том случае, когда были просмотрены все
файлы в каталоге, эта функция возвращает значение ERROR_NO_MORE_FILES. Вы

                                                                           50