Главная страница
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.018 c
7-97901
YuVoUA
2003-04-21 16:49
2003.06.30
Копирование из clipboard с указанием языка текста


1-97701
SVN
2003-06-18 09:42
2003.06.30
Delphi and Excel


14-97869
Дмитрий К.К.
2003-06-13 06:36
2003.06.30
Именинники 13 июня


14-97884
$ergey
2003-06-13 17:24
2003.06.30
COM-порт


7-97894
ИгорьШШШ
2003-04-21 09:18
2003.06.30
Вход пользователя