Condividi tramite


struttura FILE_FS_OBJECTID_INFORMATION (ntddk.h)

La struttura FILE_FS_OBJECTID_INFORMATION viene utilizzata per eseguire query o impostare l'ID oggetto per un volume del file system.

Sintassi

typedef struct _FILE_FS_OBJECTID_INFORMATION {
  UCHAR ObjectId[16];
  UCHAR ExtendedInfo[48];
} FILE_FS_OBJECTID_INFORMATION, *PFILE_FS_OBJECTID_INFORMATION;

Membri

ObjectId[16]

GUID a 16 byte che identifica il volume del file system sul disco.

ExtendedInfo[48]

Valore a 48 byte contenente informazioni aggiuntive facoltative definite dal chiamante sul volume del file system. Il significato di queste informazioni estese è opaco per il file system.

Osservazioni

Queste informazioni possono essere sottoposte a query in uno dei modi seguenti:

  • Chiamare FltQueryVolumeInformation o ZwQueryVolumeInformationFile, passando FileFsObjectIdInformation come valore di FileInformationClass e passando un buffer allocato dal chiamante FILE_FS_OBJECTID_INFORMATION strutturato come valore di FileInformation.
  • Creare un IRP con il codice di funzione principale IRP_MJ_QUERY_VOLUME_INFORMATION.

Non sono necessari diritti di accesso specifici per eseguire query su queste informazioni. Queste informazioni sono quindi disponibili finché si accede al volume tramite un handle aperto al volume stesso o a un file o a una directory nel volume.

Queste informazioni possono essere impostate in uno dei modi seguenti:

  • Chiamare FltSetVolumeInformation o ZwSetVolumeInformationFile, passando FileFsObjectIdInformation come valore di FileInformationClass e passando un buffer allocato dal chiamante FILE_FS_OBJECTID_INFORMATION strutturato come valore di FileInformation.
  • Creare un IRP con codice funzione principale IRP_MJ_SET_VOLUME_INFORMATION.

FILE_WRITE_DATA'accesso al volume è necessario per impostare queste informazioni.

Il supporto per gli ID oggetto volume è specifico del file system. In NTFS, gli ID oggetto volume vengono usati ampiamente dal servizio di rilevamento dei collegamenti distribuiti.

È importante notare che l'ID oggetto volume non è uguale al GUID del volume. L'ID oggetto volume viene assegnato al volume del file system dal file system. Il GUID del volume o nome di volume univoco, è indipendente dal file system; viene assegnato al volume di archiviazione sottostante da Gestione montaggio volumi.

Per ottenere il GUID del volume per un volume, usare la funzione win32 GetVolumeNameForVolumeMountPointW o la routineFltGetVolumeGuidName.

Le dimensioni del buffer passate nel parametro FileInformation a FltQueryVolumeInformation, FltSetVolumeInformation, ZwQueryVolumeInformationFileo ZwSetVolumeInformationFile devono essere almeno sizeof (FILE_FS_OBJECTID_INFORMATION).

Questa struttura deve essere allineata su un limite LONGLONG (8 byte).

Fabbisogno

Requisito Valore
intestazione ntddk.h (include Ntddk.h, Ntifs.h, Fltkernel.h)

Vedere anche

FltGetVolumeGuidName

FltQueryVolumeInformation

FltSetVolumeInformation

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_SET_VOLUME_INFORMATION

ZwQueryVolumeInformationFile

ZwSetVolumeInformationFile