FILE_FS_OBJECTID_INFORMATION struttura (ntddk.h)

La struttura FILE_FS_OBJECTID_INFORMATION viene usata 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;

Members

ObjectId[16]

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

ExtendedInfo[48]

Valore di 48 byte contenente informazioni facoltative e definite dal chiamante aggiuntivo nel volume del file system. Il significato di queste informazioni estese è opaco al file system.

Commenti

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 strutturata come valore di FileInformation.
  • Creare un'istanza di IRP con 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é il volume è accessibile 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 strutturata come valore di FileInformation.
  • Creare un'IRP con codice di funzione principale IRP_MJ_SET_VOLUME_INFORMATION.

FILE_WRITE_DATA l'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 il nome del volume univoco è indipendente dal file system; viene assegnato al volume di archiviazione sottostante da Volume Mount Manager.

Per ottenere il GUID del volume per un volume, usare la funzione Win32 GetVolumeNameForVolumeMountPointW o la routine FltGetVolumeGuidName .

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

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

Requisiti

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

Vedi anche

FltGetVolumeGuidName

FltQueryVolumeInformation

FltSetVolumeInformation

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_SET_VOLUME_INFORMATION

ZwQueryVolumeInformationFile

ZwSetVolumeInformationFile