Ищу Api Функцию

Тема в разделе "Операционные системы", создана пользователем Vitiay, 16 июн 2006.

Статус темы:
Закрыта.
  1. Vitiay

    Vitiay Гость

    Привет Вам!
    Спасибо что зашли!
    Кратко: пишу прогу на с++. По сути поиск файлов. Но Есть нуанс. Если вы знаете, то в Total Commandere ЕСТЬ ОПЦИЯ Show system/hidden files. При этом, при посике файлов если опция включена, то ищет все, а если нет - то без системных и скрытых. У меня такая же проблема. Моя прога не "видит" системные и скрытые. То ли нет доступа, то ли приоритета к ресурсам, то ли хз. Может есть какая-то API функция, которая помогает решить эту проблему(ведь в Commandere она решена). Если знаете, помогите плз.
     
  2. zubr

    zubr Гость

    Код в студию.
     
  3. Vitiay

    Vitiay Гость

    Виноват!
    Код не напишу (так много лишнего) .
    Но суть такая.
    Есть такие функции
    FindFirstFile, FindNextFile.
    Как обычно параметры : HANDLE и самое важное WIN32_FIND_DATA
    Этот WIN32_FIND_DATA содердит атрибуты того на что указывает HANDLE. В часности там есть параметры, скрытый ли объект (вообще говоря, жто может быть и файл и папка), системный Вообщем примерно изображено в конце (см. Ниже)
    Но я так понял, что атрибуты складываются.
    По моему получилось
    Файл: 0x20<=X<0x40
    0x60<=X<0x80
    0xA0<=X
    Директория:
    X<0x20
    0x40<=X<0x60
    0x90<=X<0xA0
    Однако в папке Windows некоторые поддиректории имеют атрибут 0x812. Может я некоторые атрибуты не так нашел? (некотрые из них в MSDN есть, а в с++ пишет ошибку(vc++6.0))
    Есть Идеи?
    Всегда рад узнать их!!!!!





    цитата из MSDN

    ---- censored --------
     
  4. grigsoft

    grigsoft Well-Known Member

    Регистрация:
    15 ноя 2005
    Сообщения:
    735
    Симпатии:
    0
    Вот цитировать сюда MSDN необязательно - все могут найти сами, хотите помочь - дайте ссылку на топик, он весь есть в сети.

    По теме - FindFirstFile и прочие всегда возвращают все файлы, включая и спрятанные. Почитайте про битовую арифметику, операции & | и прочее, тогда не будет вопросов по поводу получения и проверки значений атрибутов.
     
  5. Vitiay

    Vitiay Гость

    складываются все атрибуты или нет? Вроде же Normal используется только 1, тогда как понять файл это или папка?
     
  6. Little Friend

    Little Friend Гость

    А ты не задумывался что у файла может быть несколько атрибутов? Скрытая папка, например. Или скрытый файл, доступный только для чтения. В общем, как тебе уже говорили, использую битовую арифметику.
     
  7. Vitiay

    Vitiay Гость

    Вот и я про тоже. Но нашел папку с атрибутом 0x30 получается он Directory (0x10) и archived (0x20). А achived - атрибут файла как я понимаю.
    P.S.: ведь атрибуты складывают (не XOR, как я понимаю)
     
  8. grigsoft

    grigsoft Well-Known Member

    Регистрация:
    15 ноя 2005
    Сообщения:
    735
    Симпатии:
    0
    FILE_ATTRIBUTE_DIRECTORY - единственное что отличает каталог от файла. Все остальное - твои измышления.
     
  9. Vitiay

    Vitiay Гость

    Спс за ответ.
    Я так понял, что если атрибут X, то X (mod 20)>=10 - папка
    X (mod 20)<10 - файл
     
  10. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    X&FILE_ATTRIBUTE_DIRECTORY>0 то папка
    в случае с паскалевским сиyтаксисом будет что то вроде (X and FILE_ATTRIBUTE_DIRECTORY)>0
     
Загрузка...
Похожие Темы - Ищу Api Функцию
  1. bestguru
    Ответов:
    0
    Просмотров:
    913
  2. Dahlum
    Ответов:
    0
    Просмотров:
    83
  3. [ixTor]
    Ответов:
    1
    Просмотров:
    111
  4. dedushckin
    Ответов:
    2
    Просмотров:
    272
  5. anon
    Ответов:
    0
    Просмотров:
    385
Статус темы:
Закрыта.

Поделиться этой страницей