estrutura FILE_FS_OBJECTID_INFORMATION (ntddk.h)
A estrutura FILE_FS_OBJECTID_INFORMATION é usada para consultar ou definir a ID do objeto para um volume do sistema de arquivos.
Sintaxe
typedef struct _FILE_FS_OBJECTID_INFORMATION {
UCHAR ObjectId[16];
UCHAR ExtendedInfo[48];
} FILE_FS_OBJECTID_INFORMATION, *PFILE_FS_OBJECTID_INFORMATION;
Membros
ObjectId[16]
Um GUID de 16 bytes que identifica o volume do sistema de arquivos no disco.
ExtendedInfo[48]
Um valor de 48 bytes que contém informações opcionais e adicionais definidas pelo chamador no volume do sistema de arquivos. O significado dessas informações estendidas é opaco para o sistema de arquivos.
Comentários
Essas informações podem ser consultadas de uma das seguintes maneiras:
- Chame FltQueryVolumeInformation ou ZwQueryVolumeInformationFile, passando FileFsObjectIdInformation como o valor de FileInformationClass e passando um buffer alocado pelo chamador FILE_FS_OBJECTID_INFORMATION estruturado como o valor de FileInformation.
- Crie um IRP com o código de função principal IRP_MJ_QUERY_VOLUME_INFORMATION.
Nenhum direito de acesso específico é necessário para consultar essas informações. Portanto, essas informações estão disponíveis desde que o volume seja acessado por meio de um identificador aberto para o próprio volume ou para um arquivo ou diretório no volume.
Essas informações podem ser definidas de qualquer uma das seguintes maneiras:
- Chame FltSetVolumeInformation ou ZwSetVolumeInformationFile, passando FileFsObjectIdInformation como o valor de FileInformationClass e passando um buffer alocado pelo chamador FILE_FS_OBJECTID_INFORMATION estruturado como o valor de FileInformation.
- Crie um IRP com o código de função principal IRP_MJ_SET_VOLUME_INFORMATION.
FILE_WRITE_DATA acesso ao volume é necessário para definir essas informações.
O suporte para IDs de objeto de volume é específico do sistema de arquivos. No NTFS, as IDs de objeto de volume são usadas extensivamente pelo serviço de acompanhamento de link distribuído.
É importante observar que a ID do objeto de volume não é igual ao GUID do volume. A ID do objeto de volume é atribuída ao volume do sistema de arquivos pelo sistema de arquivos. O GUID do volume, ou nome de volume exclusivo, é independente do sistema de arquivos; ele é atribuído ao volume de armazenamento subjacente pelo Gerenciador de Montagem de Volume.
Para obter o GUID do volume de um volume, use a função Win32 GetVolumeNameForVolumeMountPointW ou a rotina FltGetVolumeGuidName .
O tamanho do buffer passado no parâmetro FileInformation para FltQueryVolumeInformation, FltSetVolumeInformation, ZwQueryVolumeInformationFile ou ZwSetVolumeInformationFile deve ser pelo menos sizeof (FILE_FS_OBJECTID_INFORMATION).
Essa estrutura deve ser alinhada em um limite LONGLONG (8 bytes).
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ntddk.h (inclua Ntddk.h, Ntifs.h, Fltkernel.h) |