Получение содержимого каталога

Тема в разделе "WASM.BEGINNERS", создана пользователем jimiforce, 10 сен 2005.

  1. jimiforce

    jimiforce New Member

    Публикаций:
    0
    Регистрация:
    16 июл 2005
    Сообщения:
    4
    а есть ли API функция получения содержимого каталога
     
  2. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Есть. FindFirstFile и далее по тексту.
     
  3. MegaZu

    MegaZu New Member

    Публикаций:
    0
    Регистрация:
    22 июл 2005
    Сообщения:
    290
    Можно NtQueryDirectoryFile
     
  4. zobot1

    zobot1 New Member

    Публикаций:
    0
    Регистрация:
    30 июн 2005
    Сообщения:
    55
    угу. что-то типа


    Код (Text):
    1. bool dFindFile(std::string *str)
    2. {
    3.     WIN32_FIND_DATA FindFileData;
    4.     HANDLE hFind;
    5.  
    6.  
    7.     hFind = FindFirstFile(str->append("*.txt")._Myptr(),&FindFileData);
    8.     if (hFind == INVALID_HANDLE_VALUE){
    9.         printf ("Invalid File Handle. GetLastError reports %d\n", GetLastError ());
    10.         return false;
    11.     }else{
    12.         if(!(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)){
    13.             vFilename.push_back(FindFileData.cFileName);
    14.         }
    15.  
    16.         while(FindNextFile(hFind,&FindFileData) != 0){
    17.             if(!(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)){
    18.                 vFilename.push_back(FindFileData.cFileName);
    19.             }
    20.         }
    21.  
    22.         FindClose(hFind);
    23.  
    24.         return true;
    25.     }
    26. }




    ps: директории выкидывает. ищет только *.txt
     
  5. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    zobot1

    Тебе не знакома конструкция do {...} while(...);?
     
  6. zobot1

    zobot1 New Member

    Публикаций:
    0
    Регистрация:
    30 июн 2005
    Сообщения:
    55
    это для примера на скорую руку написано просто как идея

    так-то естна проксорить на асме необходимо как завещал дзен-дракон asdf.
     
  7. zobot1

    zobot1 New Member

    Публикаций:
    0
    Регистрация:
    30 июн 2005
    Сообщения:
    55
    для особо занудных хэккеров:
    Код (Text):
    1.  
    2.     }else{
    3.         do{
    4.             if(!(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)){
    5.                 vFilename.push_back(FindFileData.cFileName);
    6.                         }
    7.         }while(FindNextFile(hFind,&FindFileData) != 0);
    8.  
    9.  
    10.         FindClose(hFind);
    11.  
    12.         return true;
    13.     }
    14.