Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Как узнать или установить аттрибуты файла

Чтобы прочитать аттрибуты файла, необходимо передать имя файла в функцию 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);

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay