скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как узнать или установить аттрибуты файла



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






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook