...

var attrs: DWORD;

begin

attrs := GetFileAttribute(PAnsiChar(\'C:\boot.ini\'));

if (attrs and FILE_ATTRIBUTE_SYSTEM <> 0) then {файл системный};

Атрибуты устанавливаются при помощи API-функции SetFileAttributes. Она принимает два параметра: путь файла или папки (PChar) и битовую маску атрибутов. Возвращает 0 (False) в случае неудачи и ненулевое значение в противном случае.

Поскольку в функцию SetFileAttributes передается маска, хранящая сведения сразу обо всех атрибутах файла или папки, то изменять атрибуты нужно аккуратно (чтобы не удалить установленные ранее). Пример (отрывок программы) «включения» одного и одновременного «выключения» другого атрибута файла приведен в листинге 4.22 (проверка ошибок для простоты не производится).

Загрузка...