Выдрато из MSDN и несколько модифицировано:
| Код | WIN32_FIND_DATA FindFileData; HANDLE hFind;// = INVALID_HANDLE_VALUE; DWORD dwError; int err;
hFind = FindFirstFile((path + "\\*.*").c_str(), &FindFileData);//Тут можно масочку подправить
if (hFind == INVALID_HANDLE_VALUE) { //Status = "Ошибка: Файлы не найдены"; return (-1); } else { if (strcmp(FindFileData.cFileName , ".") != 0 && strcmp(FindFileData.cFileName , "..") != 0 && (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != FILE_ATTRIBUTE_DIRECTORY) { //Нашелся файл }
while (FindNextFile(hFind, &FindFileData) != 0) { if (strcmp(FindFileData.cFileName , ".") != 0 && strcmp(FindFileData.cFileName , "..") != 0 && (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != FILE_ATTRIBUTE_DIRECTORY) { //Нашелся еще файл } }
dwError = GetLastError(); if (dwError == ERROR_NO_MORE_FILES) FindClose(hFind); else return -1; } return 0;
| |