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


Функция ZwSetVolumeInformationFile (ntifs.h)

ZwSetVolumeInformationFile изменяет сведения о томе, связанном с заданным файлом, каталогом, устройством хранения или томом.

Синтаксис

NTSYSAPI NTSTATUS ZwSetVolumeInformationFile(
  [in]  HANDLE               FileHandle,
  [out] PIO_STATUS_BLOCK     IoStatusBlock,
  [in]  PVOID                FsInformation,
  [in]  ULONG                Length,
  [in]  FS_INFORMATION_CLASS FsInformationClass
);

Параметры

[in] FileHandle

Обработка объекта файла для открытого файла, каталога, устройства хранения или тома, сведения о томе которого необходимо изменить.

[out] IoStatusBlock

Указатель на структуру IO_STATUS_BLOCK, которая получает окончательное состояние завершения и сведения об операции.

[in] FsInformation

Указатель на выделенный вызывающим буфер, содержащий сведения о томе, которые необходимо изменить. Структура сведений в этом буфере зависит от значения FsInformationClass, как показано в следующей таблице.

[in] Length

Размер в байтах буфера, на который указывает FsInformation. Вызывающий объект должен задать этот параметр в соответствии с заданным FsInformationClass.

[in] FsInformationClass

Тип сведений о томе, которые нужно задать. Одно из следующих элементов:

Ценность Значение
FileFsControlInformation Задайте FILE_FS_CONTROL_INFORMATION для тома.
FileFsLabelInformation Задайте FILE_FS_LABEL_INFORMATION для тома.
FileFsObjectIdInformation Задайте FILE_FS_OBJECTID_INFORMATION для тома.

Возвращаемое значение

ZwSetVolumeInformationFile возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS, например одно из следующих значений:

Возвращаемый код Описание
STATUS_INFO_LENGTH_MISMATCH
Недопустимое значение было указано для длины. Это код ошибки.
STATUS_INSUFFICIENT_RESOURCES

ZwSetVolumeInformationFile возникла ошибка выделения пула. Это код ошибки.

STATUS_INVALID_INFO_CLASS
Недопустимое значение было указано для FsInformationClass. Это код ошибки.

Замечания

Чтобы запросить сведения о томе, вызовите ZwQueryVolumeInformationFile.

Чтобы изменить сведения о файле, вызовите ZwSetVolumeInformationFile.

Минифильтры должны использовать FltSetInformationFile вместо ZwSetVolumeInformationFile.

Примечание Если вызов функции ZwSetVolumeInformationFileпроисходит в пользовательском режиме, следует использовать имя "NtSetInformationFile" вместо "ZwSetSetVolumeInformationFile".
 
Для вызовов драйверов в режиме ядра NtXxx и ZwXxx версии подпрограммы Windows Native System Services могут вести себя по-разному в том, как они обрабатывают и интерпретируют входные параметры. Дополнительные сведения о связи между NtXxx и ZwXxx версиями подпрограммы см. в разделе Using Nt and Zw Versions of the Native System Services Routines.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Server 2003
целевая платформа Всеобщий
заголовка ntifs.h (include Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
правил соответствия DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

См. также

FILE_FS_CONTROL_INFORMATION

FILE_FS_LABEL_INFORMATION

FILE_FS_OBJECTID_INFORMATION

FltSetInformationFile

IRP_MJ_SET_VOLUME_INFORMATION

использование версий собственных системных служб и Zw

ZwQueryVolumeInformationFile

ZwSetInformationFile