Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

ne_viens

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

#ifndef UNICODE
#define UNICODE
#endif
#ifndef _UNICODE
#define _UNICODE
#endif
#include <windows.h>
#include <stdlib.h>
#include <stdio.h>
 
#pragma optimize("s", on)
void find_files(short* wrkdir)
{
    HANDLE hFile;
    WIN32_FIND_DATA file_data;
    short wrkdirtemp[MAX_PATH], buf[MAX_PATH];
 
    if(!wrkdir || !wrkdir[0])
        return;
 
    wcscpy(wrkdirtemp, wrkdir);
 
    if(wrkdirtemp[wcslen(wrkdirtemp)-1] != L'\\')
        wcscat(wrkdirtemp, L"\\");
 
    wsprintf(buf, L"%s*", wrkdirtemp);
    hFile = FindFirstFile(buf, &file_data);
    if(hFile == INVALID_HANDLE_VALUE)
        return;
 
    do
    {
        if(file_data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
        {
//            if(wcscmp(file_data.cFileName, L".") && wcscmp(file_data.cFileName, L".."))
            if('.' == *(int*)&file_data.cFileName || 0x002e002e == *(int*)&file_data.cFileName &&  0 == *(short*)((char*)file_data.cFileName + 4))
                continue;
 
            wsprintf(buf, L"%s%s", wrkdirtemp, file_data.cFileName);
            find_files(buf);
        }
        else
        {
//            if(!(file_data.dwFileAttributes & (FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM)))
            wprintf(L"%s%s\n", wrkdirtemp, file_data.cFileName);
        }
    } while(FindNextFile(hFile, &file_data));
 
    FindClose(hFile);
}
 
main()
{
    find_files(L"C:\\temp\\");
    getchar();
}

Всего записей: 1530 | Зарегистр. 01-11-2004 | Отправлено: 11:32 11-02-2013
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru