#ifndef _NTIOAPI_H
/**
* The NtSetVolumeInformationFile routine modifies information about the volume associated with a given file, directory, storage device, or volume.
*
* \param[in] FileHandle A handle to the file, directory, storage device, or volume for which volume information is being requested.
* \param[out] IoStatusBlock A pointer to an IO_STATUS_BLOCK structure that receives the final completion status, and the number of bytes written to the buffer pointed to by FsInformation.
* \param[in] FsInformation A pointer to a caller-allocated buffer containing the volume information to be modified.
* \param[in] Length The size, in bytes, of the buffer pointed to by FsInformation.
* \param[in] FsInformationClass The type of information to set about the volume.
* \return NTSTATUS Successful or errant status.
* \sa https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/ntifs/nf-ntifs-zwsetvolumeinformationfile
*/
NTSYSCALLAPI
NTSTATUS
NTAPI
NtSetVolumeInformationFile(
_In_ HANDLE FileHandle,
_Out_ PIO_STATUS_BLOCK IoStatusBlock,
_In_reads_bytes_(Length) PVOID FsInformation,
_In_ ULONG Length,
_In_ FSINFOCLASS FsInformationClass
);
View code on GitHub
#ifndef _NTZWAPI_H
NTSYSCALLAPI
NTSTATUS
NTAPI
ZwSetVolumeInformationFile(
_In_ HANDLE FileHandle,
_Out_ PIO_STATUS_BLOCK IoStatusBlock,
_In_reads_bytes_(Length) PVOID FsInformation,
_In_ ULONG Length,
_In_ FSINFOCLASS FsInformationClass
);
View code on GitHub
This function is documented in Windows Driver Kit.
HANDLE
to File Object.
IO result of call.
Buffer containing information to set, depending on FileSystemInformationClass
parameter.
Length of FileSystemInformation
buffer, in bytes.
Class of information to set. See FS_INFORMATION_CLASS
for valid information classes.
NtSetVolumeInformationFile
sets information to volume (device) containing file specified in FileHandle
parameter.