hex.pp.ua

Структура FILENAME_ATTRIBUTE

Код AttributeFileName и структура FILENAME_ATTRIBUTE




Структура FILENAME_ATTRIBUTE это одна из дисковых структур NTFS. Её данные служат также для объяснения содержимого буфера FileRecordBuffer, возвращаемого при вызове NtFsControlFile с кодом FSCTL_GET_NTFS_FILE_RECORD.

Атрибут имени файла всегда резидентен.

Определение структуры

typedef struct {
  ULONGLONG DirectoryFileReferenceNumber;
  ULONGLONG CreationTime; // Время изменения имени файла
  ULONGLONG ChangeTime;
  ULONGLONG LastWriteTime; 
  ULONGLONG LastAccessTime; 
  ULONGLONG AllocatedSize; 
  ULONGLONG DataSize; 
  ULONG FileAttributes;
  ULONG AlignmentOrReserved;
  UCHAR NameLength;
  UCHAR NameType; // 0x01 = длинное, 0x02 = короткое
  WCHAR Name[1];
} FILENAME_ATTRIBUTE, *PFILENAME_ATTRIBUTE;

DirectoryFileReferenceNumber
Номер ссылки на файл каталога, в котором находится имя файла.

CreationTime
Время создания файла в стандартном формате времени (то есть количество интервалов по 100 наносекунд, начиная с 1 января 1601 года). Этот элемент модифицируется только при изменении имени файла. Он может отличаться от одноименного поля в структуре STANDARD_INFORMATION.

ChangeTime
Время последнего изменения атрибутов файла в стандартном формате времени (то есть количество интервалов по 100 наносекунд, начиная с 1 января 1601 года). Этот элемент модифицируется только при изменении имени файла. Он может отличаться от одноимённого поля в структуре STANDARD_INFORMATION.

LastWriteTime
Время последней записи в файл в стандартном формате времени (то есть количество интервалов по 100 наносекунд, начиная с 1 января 1601 года). Этот элемент модифицируется только при изменении имени файла. Он может отличаться от одноимённого поля в структуре STANDARD_INFORMATION.

LastAccessTime
Время последнего обращения к файлу в стандартном формате времени (то есть количество интервалов по 100 наносекунд, начиная с 1 января 1601 года). Этот элемент модифицируется только при изменении имени файла. Он может отличаться от одноимённого поля в структуре STANDARD_INFORMATION.

AllocatedSize
Размер в байтах дискового пространства, выделенного для содержания значении атрибута. Этот элемент модифицируется только при изменении имени файла.

DataSize
Размер в байтах значения атрибута. Этот элемент модифицируется только при изменении имени файла.

FileAttributes
Атрибуты файла. Этот элемент модифицируется только при изменении имени файла. Он может отличаться от одноимённого поля в структуре STANDARD_INFORMATION.

NameLength
Размер имени файла в символах.

NameType
Тип имени. Нулевое значение типа указывает на обычное имя файла. Тип, равный единице, означает длинное имя, соответствующее короткому имени файла, а тип два короткое имя, соответствующее длинному.

Name
Имя файла в Unicode.

См. также

Список типов атрибутов дисковой структуры NTFS

По теме NTFS также есть следующее:

система комментирования CACKLE
Разделы сайта
Главная
Блог
Native API
NTFS и ReFS
Микроконтроллеры
Справочник NTDLL
Коды NTSTATUS
Разное

Избранное
NTFS Stream Explorer
Native Shell
Тенгвар

Остальное
nvpnhcknn (архив)
English pages
Контакты

Ленты atom
Лента Atom сайта Лента Atom блога



При копировании материалов хорошим тоном будет указание авторства и ссылка на сайт.