Файловые функции
Атрибуты файла
Каждая запись MFT содержит набор атрибутов, который может различаться для разных файлов и каталогов.
Атрибут в NTFS состоит из заголовка и значения, а заголовок, в свою очередь, содержит тип атрибута, его имя, длину и данные о размещении атрибута. Имя атрибута может отсутствовать, остальные поля обязательны. Заголовок атрибута всегда хранится в самой записи MFT, а значение – либо тоже в самой записи (при этом атрибут называется резидентным), либо в кластере области данных (нерезидентный атрибут). Если атрибут нерезидентный, то в заголовке указываются сведения о размещении его значения на диске.
Файловые функции позволяют выполнять действия, связанные с созданием и удалением файлов, изменением их атрибутов, записью данных в файл и чтением их из файла. Функции работы с файлами находятся в папке Delphi7\Source\Rtl\Sys в модулях System.pas и SysUtils.pas.
Функции открытия файла:
FileOpen (const FileName: string; Mode: LongWord): integer;
Функция позволяет открыть указанный файл в заданном режиме. В случае возникновения ошибки открытия файла, функция возвращает значение, равное -1.
FileName– имя открываемого файла;
Mode –режим открываемого файла.
Допустимые режимы:
Режим | Значение | Описание |
fmOpenRead | $0000 | Открыть только для чтения |
fmOpenWrite | $0001 | Открыть только для записи |
fmOpenReadWrite | $0002 | Открыть для чтения и записи |
fmShareCompat | $0000 | Обеспечить совместимость со старой моделью доступа к файлам |
fmShareExclusive | $0010 | Запретить другим доступ к файлу |
fmShareDenyWrite | $0020 | Запретить другим запись в файл |
fmShareDenyRead | $0030 | Запретить другим чтение из файла |
fmShareDenyNone | $0040 | Разрешить другим все виды доступа |
Пример.
Var
FileHandle: integer;