Поделиться через


структура NTFS_VOLUME_DATA_BUFFER (winioctl.h)

Представляет данные тома. Эта структура передается в код элемента управления FSCTL_GET_NTFS_VOLUME_DATA .

Синтаксис

typedef struct {
  LARGE_INTEGER VolumeSerialNumber;
  LARGE_INTEGER NumberSectors;
  LARGE_INTEGER TotalClusters;
  LARGE_INTEGER FreeClusters;
  LARGE_INTEGER TotalReserved;
  DWORD         BytesPerSector;
  DWORD         BytesPerCluster;
  DWORD         BytesPerFileRecordSegment;
  DWORD         ClustersPerFileRecordSegment;
  LARGE_INTEGER MftValidDataLength;
  LARGE_INTEGER MftStartLcn;
  LARGE_INTEGER Mft2StartLcn;
  LARGE_INTEGER MftZoneStart;
  LARGE_INTEGER MftZoneEnd;
} NTFS_VOLUME_DATA_BUFFER, *PNTFS_VOLUME_DATA_BUFFER;

Члены

VolumeSerialNumber

Серийный номер тома. Это уникальный номер, присвоенный носителю тома операционной системой.

NumberSectors

Количество секторов в указанном томе.

TotalClusters

Количество используемых и свободных кластеров в указанном томе.

FreeClusters

Количество свободных кластеров в указанном томе.

TotalReserved

Количество зарезервированных кластеров в указанном томе.

BytesPerSector

Количество байтов в секторе указанного тома.

BytesPerCluster

Количество байтов в кластере на указанном томе. Это значение также называется коэффициентом кластера.

BytesPerFileRecordSegment

Количество байтов в сегменте записи файла.

ClustersPerFileRecordSegment

Количество кластеров в сегменте записи файла.

MftValidDataLength

Длина таблицы главного файла в байтах.

MftStartLcn

Начальный номер логического кластера главной таблицы файлов.

Mft2StartLcn

Начальный номер логического кластера зеркального отображения главной таблицы файлов.

MftZoneStart

Начальный номер логического кластера зоны таблицы главного файла.

MftZoneEnd

Конечный номер логического кластера зоны главного файла таблицы.

Комментарии

Зарезервированные кластеры — это бесплатные кластеры, зарезервированные для последующего использования Windows.

Структура NTFS_VOLUME_DATA_BUFFER представляет основные сведения, возвращаемые FSCTL_GET_NTFS_VOLUME_DATA. Для получения сведений о расширенном томе передайте буфер, представляющий собой объединенный размер NTFS_VOLUME_DATA_BUFFER и NTFS_EXTENDED_VOLUME_DATA структур. После успешного выполнения буфер, возвращаемый FSCTL_GET_NTFS_VOLUME_DATA , будет содержать сведения, связанные с обеими структурами. Структура NTFS_VOLUME_DATA_BUFFER всегда заполняется, начиная с начала буфера, а NTFS_EXTENDED_VOLUME_DATA сразу после нее . Структура NTFS_EXTENDED_VOLUME_DATA определяется следующим образом:

C++
typedef struct {
    ULONG ByteCount;
    USHORT MajorVersion;
    USHORT MinorVersion;
} NTFS_EXTENDED_VOLUME_DATA, *PNTFS_EXTENDED_VOLUME_DATA;
Эта структура содержит сведения об основной и дополнительной версии тома NTFS. Член ByteCount вернет общее количество байтов выходного буфера, используемого для этой структуры при вызове FSCTL_GET_NTFS_VOLUME_DATA. Это значение должно иметь значение , sizeof(NTFS_EXTENDED_VOLUME_DATA) если переданный буфер был достаточно велик для его хранения, в противном случае значение будет меньше sizeof(NTFS_EXTENDED_VOLUME_DATA).

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть winioctl.h (включая Windows.h)

См. также раздел

FSCTL_GET_NTFS_VOLUME_DATA