Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.30;
Скачать: CL | DM;

Вниз

FindFirst-FindNext   Найти похожие ветки 

 
Sandman25 ©   (2003-06-11 16:44) [80]

Anatoly Podgoretsky © (11.06.03 16:13)

В данном конкретном случае - нет.
В маске было faAnyFile, то есть faHidden + faDirectory + faSystem и т.д.
"Ваше" условие бы сработало только в том случае, если у файла установлены ВСЕ эти атрибуты. В то время как "физический" смысл faAnyFile - атрибут может быть любым. Даже для файла с атрибутом $00000000 if должен был срабатывать.

И он срабатывал, если у нас sr.Attr and faAnyFile = sr.Attr (0 and $3F = 0)
И НЕ срабатывал, если у нас sr.Attr and faAnyFile = faAnyFile (0 and $3F <> $3F).
Убедил?


 
Anatoly Podgoretsky ©   (2003-06-11 17:17) [81]

Не знаю только в чем, в первом случае будет срабатывать если не изменится ни один бит в sr.Attr (биты за пределами $3F будут сброшены, а для этого достаточно проверить sr.Attr and not $3F = <> 0, поскольку младчшии 6 бит просто не интересует, но врядли его интересовал вопрос установлены ли расширенные биты), а во втором случае если после операции AND останется $3F (такая комбинация вроде бы не возможно и предназначена для поддержки длинных имен, то есть поиском не выдается, даже если ее напрямую установить в записи каталога).

Для меня нет вопросов по работе с аттрибутами, начальная математика по работе с битами.


 
Sandman25 ©   (2003-06-11 17:25) [82]

Насколько я понял, мы с Вами можем согласиться только в том, что проверку на faAnyFile проводить не имеет смысла.
А для проверок на что-то другое нужно знать, что же конкретно требуется в постановке задачи.


 
Anatoly Podgoretsky ©   (2003-06-11 17:48) [83]

Ну тогда еще раз, если цель проверки определить установлен ли хоть один из расширенных битов (старшие 26 битов), то приведенная авторам конструкция верная, иначе налицо не понимание работы. На младщии 6 бит влияния не оказывается и маска указана верная.


 
Sandman25 ©   (2003-06-11 18:26) [84]

Да, абсолютно согласен.



Страницы: 1 2 3 вся ветка

Текущий архив: 2003.06.30;
Скачать: CL | DM;

Наверх




Память: 0.6 MB
Время: 0.044 c
14-97825
Саня
2003-06-08 11:14
2003.06.30
Какие компоненты


1-97639
Бородин М
2003-06-19 22:59
2003.06.30
Очистка массива


1-97712
MakNik
2003-06-18 11:36
2003.06.30
автозагрузка


7-97913
BaRToV
2003-04-13 13:13
2003.06.30
CD-Rom и все что с ним связано...


7-97895
demonyator
2003-04-20 20:25
2003.06.30
Как заблокировать пользователю доступ к определённой папке?