Описание |
Функция FileSetAttr устанавливает атрибуты определенного файла. Также можно изменять атрибуты файла.
Следующими значениями integer возможна установка атрибутов:
faReadOnly : 1 : Файл только для чтения
faHidden : 2 : Скрытый файл
faSysFile : 4 : Системный файл
faVolumeID : 8 : Файл идентификатора объёма
faDirectory : 16 : Файл директории
faArchive : 32 : Архивный файл
faSymLink : 64 : Ярлык
Возвращённая величина Integer является нулем, если установка атрибутов была успешна, в противном случае она содержит код ошибки.
|
|
Примечания |
Эта функция зависит от Операционной системы. Например, Архив на Linux ничего не означает.
Важно: В течение испытания, автор всегда получал ненулевой код возврата, даже при том, что соответствующие биты были установлены.
|
|
Похожие команды |
FileGetAttr Выдаёт атрибуты файла
FileAge Получение датя/время последнего изменения файла, не открывая его
FileSetDate Установка даты и времени последнего изменения файла
FileExists Возвращает True если указанный файл существует
| |
|
Пример кода : Создание текстового файла, установка атрибутоа только для чтения и скрытый и показ его атрибутов |
var
fileName : string;
myFile : TextFile;
attrs : Integer;
begin // Попытка открыть текстовый
файл для записи
fileName := 'ATestFile.txt';
AssignFile(myFile, fileName);
ReWrite(myFile);
// Запись в файл
Write(myFile, 'Hello World');
// Закрытие файла
CloseFile(myFile);
// Делание файла только для чтения и
системным
if FileSetAttr(fileName, faReadOnly or faSysFile) > 0
then ShowMessage('Атрибуты файла установлены в только для чтения и
системный')
else ShowMessage('Изменение атрибутов файла провалилось');
// Получение атрибутов файла
attrs := FileGetAttr(fileName);
// Показ этих атрибутов
if attrs and faReadOnly > 0
then ShowMessage('Файл только для чтения')
else ShowMessage('Файл не только для чтения');
if attrs and faHidden > 0
then ShowMessage('Файл скрытый')
else ShowMessage('Файл не скрытый');
if attrs and faSysFile > 0
then ShowMessage('Файл является системным')
else ShowMessage('Файл не является системным');
if attrs and faVolumeID > 0
then ShowMessage('Файл является идентификатором объёма')
else ShowMessage('Файл не является идентификатором объёма');
if attrs and faDirectory > 0
then ShowMessage('Файл является каталогом')
else ShowMessage('Файл не является каталогом');
if attrs and faArchive > 0
then ShowMessage('Файл архивный')
else ShowMessage('Файл не архивный');
if attrs and faSymLink > 0
then ShowMessage('Файл является ярлыком')
else ShowMessage('Файл не является ярлыком');
end;
|
Атрибуты файла установлены в только для чтения и системный
Файл только для чтения
Файл не скрытый
Файл является системным
Файл не является идентификатором объёма
Файл не является каталогом
Файл не архивный
Файл не является ярлыком
|
|