Как узнать или установить аттрибуты файла
Чтобы прочитать аттрибуты файла, необходимо передать имя файла в функцию
FileGetAttr, которая вернёт аттрибуты для данного файла.
Например, добавьте на форму компоненты TButton и TLabel и добавьте следующий
код в в обработчик события OnClick кнопки:
var
attr: Integer;
s: string;
begin
attr := FileGetAttr('c:\Autoexec.bat');
if (attr and faHidden) <> 0 then s := 'Hidden';
if (attr and faReadOnly) <> 0 then s := s + 'Read-Only';
if (attr and faSysFile) <> 0 then s := s + 'System';
if (attr and faArchive) <> 0 then s := s + 'Archive';
Label1.Caption := s;
end;
|
Чтобы установить аттрибуты у файла, необходимо передать имя файла и нужные
аттрибуты в функцию FileSetAttr. Каждый аттрибут имеет мнемоническое имя,
объявленное в юните SysUtils.
Например, чтобы установить файлу системный атрибут, необходимо выполнить
следующий код:
Attributes := Attributes or faSystem;
|
Так же можно очистить некоторые аттрибуты. Например, чтобы снять атрибуты только
чтения и "Скрытый", необходимо выполнить следующий код:
Attributes := Attributes and not (faReadOnly or faHidden);
|
Вместо объявленных значений атрибутов можно использовать числовые
значения.
+--------------------------------+
| Возвр. знач.| Аттр. Файла |
+--------------------------------+
| 128 | Нормальный |
| 1 | Только чтение |
| 2 | Скрытый |
| 4 | Системный |
| 32 | Архивный |
+-------------+------------------+
Пример:
{Скрытый}
FileSetAttr('C:\Autoexec.bat',2);
{Скрытый и Только чтение. В свою очередь
функция FileGetAttr верн¸т значение 3}
FileSetAttr('C:\Autoexec.bat',3);
|
|