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


структура FILE_FS_OBJECTID_INFORMATION (ntddk.h)

Структура FILE_FS_OBJECTID_INFORMATION используется для запроса или задания идентификатора объекта для тома файловой системы.

Синтаксис

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

Члены

ObjectId[16]

16-байтовый GUID, определяющий том файловой системы на диске.

ExtendedInfo[48]

48-байтовое значение, содержащее необязательные дополнительные сведения о томе файловой системы. Значение этой расширенной информации непрозрачно к файловой системе.

Замечания

Эти сведения можно запрашивать в любом из следующих способов:

  • Вызовите FltQueryVolumeInformation или ZwQueryVolumeInformationFile, передав FileFsObjectIdInformation в качестве значения FileInformationClass и передавая выделенный вызывающим FILE_FS_OBJECTID_INFORMATION структурированный буфер в качестве значения FileInformation.
  • Создайте IRP с основным кодом функции IRP_MJ_QUERY_VOLUME_INFORMATION.

Для запроса этих сведений не требуются определенные права доступа. Таким образом, эта информация доступна до тех пор, пока том обращается через открытый дескриптор к самому тому, или к файлу или каталогу на томе.

Эти сведения можно задать в любом из следующих способов:

  • Вызовите FltSetVolumeInformation или ZwSetVolumeInformationFile, передав fileFsObjectIdInformation в качестве значения FileInformationClass и передавая выделенный вызывающим FILE_FS_OBJECTID_INFORMATION структурированный буфер в качестве значения FileInformation.
  • Создайте IRP с основным кодом функции IRP_MJ_SET_VOLUME_INFORMATION.

FILE_WRITE_DATA для установки этих сведений требуется доступ к тому.

Поддержка идентификаторов объектов тома зависит от файловой системы. В NTFS идентификаторы объектов тома широко используются службой отслеживания распределенных ссылок.

Важно отметить, что идентификатор объекта тома не совпадает с идентификатором GUID тома. Идентификатор объекта тома назначается тому файловой системы файловой системой файловой системой. Идентификатор GUID томаили уникальное имя тома, не зависит от файловой системы; Он назначается базовому тому хранилища диспетчером подключения томов.

Чтобы получить GUID тома для тома, используйте функцию GetVolumeNameForVolumeMountPointWили FltGetVolumeGuidName.

Размер буфера, переданный в параметре FileInformation, FltQueryVolumeInformation, FltSetVolumeInformation, ZwQueryVolumeInformationFileили ZwSetVolumeInformationFile должен быть по крайней мере размер (FILE_FS_OBJECTID_INFORMATION).

Эта структура должна быть выровнена по границе LONGLONG (8-байтов).

Требования

Требование Ценность
заголовка ntddk.h (include Ntddk.h, Ntifs.h, Fltkernel.h)

См. также

FltGetVolumeGuidName

FltQueryVolumeInformation

FltSetVolumeInformation

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_SET_VOLUME_INFORMATION

ZwQueryVolumeInformationFile

ZwSetVolumeInformationFile