estrutura NTFS_VOLUME_DATA_BUFFER (winioctl.h)

Representa dados de volume. Essa estrutura é passada para o código de controle FSCTL_GET_NTFS_VOLUME_DATA .

Sintaxe

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;

Membros

VolumeSerialNumber

O número de série do volume. Esse é um número exclusivo atribuído à mídia de volume pelo sistema operacional.

NumberSectors

O número de setores no volume especificado.

TotalClusters

O número de clusters usados e gratuitos no volume especificado.

FreeClusters

O número de clusters gratuitos no volume especificado.

TotalReserved

O número de clusters reservados no volume especificado.

BytesPerSector

O número de bytes em um setor no volume especificado.

BytesPerCluster

O número de bytes em um cluster no volume especificado. Esse valor também é conhecido como fator de cluster.

BytesPerFileRecordSegment

O número de bytes em um segmento de registro de arquivo.

ClustersPerFileRecordSegment

O número de clusters em um segmento de registro de arquivo.

MftValidDataLength

O comprimento da tabela de arquivos mestre, em bytes.

MftStartLcn

O número do cluster lógico inicial da tabela de arquivos mestre.

Mft2StartLcn

O número do cluster lógico inicial do espelho da tabela de arquivos mestre.

MftZoneStart

O número do cluster lógico inicial da zona da tabela de arquivos mestre.

MftZoneEnd

O número final do cluster lógico da zona da tabela de arquivos mestre.

Comentários

Clusters reservados são os clusters gratuitos reservados para uso posterior pelo Windows.

A estrutura NTFS_VOLUME_DATA_BUFFER representa as informações básicas retornadas por FSCTL_GET_NTFS_VOLUME_DATA. Para obter informações de volume estendido, passe um buffer que seja o tamanho combinado das estruturas NTFS_VOLUME_DATA_BUFFER e NTFS_EXTENDED_VOLUME_DATA . Após o êxito, o buffer retornado por FSCTL_GET_NTFS_VOLUME_DATA conterá as informações associadas a ambas as estruturas. A estrutura NTFS_VOLUME_DATA_BUFFER sempre será preenchida a partir do início do buffer, com a estrutura NTFS_EXTENDED_VOLUME_DATA imediatamente a seguir. A estrutura NTFS_EXTENDED_VOLUME_DATA é definida da seguinte maneira:

C++
typedef struct {
    ULONG ByteCount;
    USHORT MajorVersion;
    USHORT MinorVersion;
} NTFS_EXTENDED_VOLUME_DATA, *PNTFS_EXTENDED_VOLUME_DATA;
Essa estrutura contém as informações de versão principal e secundária de um volume NTFS. O membro ByteCount retornará o total de bytes do buffer de saída usado para essa estrutura pela chamada para FSCTL_GET_NTFS_VOLUME_DATA. Esse valor deve ser sizeof(NTFS_EXTENDED_VOLUME_DATA) se o buffer passado for grande o suficiente para mantê-lo, caso contrário, o valor será menor que sizeof(NTFS_EXTENDED_VOLUME_DATA).

Requisitos

   
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho winioctl.h (inclua Windows.h)

Confira também

FSCTL_GET_NTFS_VOLUME_DATA