Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > из Cardinal правильно прочитать аттрибуты файла


Автор: Elfebet 31.8.2006, 09:15
вот примеру я пишу код
Код

var attrib:Cardinal;
...
attrib:=FILE_ATTRIBUTE_READONLY+FILE_ATTRIBUTE_HIDDEN+FILE_ATTRIBUTE_ARCHIVE;
SetFileAttributes('c:\TestFile.txt', attrib);

и переменную attrib сохраняю в файл настроек, и потом при загрузке настроек мне нужно attrib прочитать и разбить на вид FILE_ATTRIBUTE_READONLY+FILE_ATTRIBUTE_HIDDEN+FILE_ATTRIBUTE_ARCHIVE.
суть в том что я по чекбоксам читаю какие чекеты юзер поставил, и по этим чекетам устанавливаю аттрибуты, но когда пользователь захочет загрузить файл настроек чекеты должны быть установлены в том виде в котором пользователь поставил.

ps. Ведь как-то винда читает эту переменные и понимает какие аттрибуты нужно выставить.

Автор: Matematik 31.8.2006, 09:36
Код

CheckBoxReadOnly.Checked := (Attr and FILE_ATTRIBUTE_READONLY)=FILE_ATTRIBUTE_READONLY;

Автор: Elfebet 31.8.2006, 09:47
хм... неужели все так просто? спасибо!

Автор: Snowy 31.8.2006, 09:54
Угу. Именно так всё и просто.
А складывать грамотно не сложением, а битовым наложением:
Код

attrib := FILE_ATTRIBUTE_READONLY or FILE_ATTRIBUTE_HIDDEN or FILE_ATTRIBUTE_ARCHIVE;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)