Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  


Основы Delphi
FileSetAttr
Функция
Устанавливает атрибуты файла SysUtils unit
  function FileSetAttr ( const FileName : string; Attributes : Integer; ) : Integer;
Описание
Функция 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;

Атрибуты файла установлены в только для чтения и системный
Файл только для чтения
Файл не скрытый
Файл является системным
Файл не является идентификатором объёма
Файл не является каталогом
Файл не архивный
Файл не является ярлыком
 



© Форум Delphi   |  Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки   |  Английская версия