FltIsVolumeWritable function (fltkernel.h)

The FltIsVolumeWritable routine determines whether the disk device that corresponds to a volume or minifilter driver instance is writable.

Syntax

NTSTATUS FLTAPI FltIsVolumeWritable(
  [in]  PVOID    FltObject,
  [out] PBOOLEAN IsWritable
);

Parameters

[in] FltObject

An opaque pointer for the volume or instance. Be aware that the associated volume must be a local file system volume.

[out] IsWritable

A pointer to a caller-allocated Boolean variable that receives TRUE if the volume is writable; FALSE otherwise.

Return value

FltIsVolumeWritable returns STATUS_SUCCESS or an appropriate NTSTATUS value such as one of the following:

Return code Description
STATUS_INSUFFICIENT_RESOURCES
FltIsVolumeWritable encountered a memory allocation failure. This is an error code.
STATUS_INVALID_DEVICE_REQUEST
The disk device does not support IOCTL_DISK_IS_WRITABLE requests. This is an error code.

Remarks

FltIsVolumeWritable sends an IOCTL_DISK_IS_WRITABLE request to the underlying storage device that is associated with the given volume or instance.

In versions of Windows prior to Windows Vista, the FltIsVolumeWritable routine accepted only volumes, not instances.

Requirements

Requirement Value
Minimum supported client The FltIsVolumeWritable routine is available in Windows Vista and later versions of Windows.
Target Platform Universal
Header fltkernel.h (include Fltkernel.h)
Library Fltmgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

See also

IOCTL_DISK_IS_WRITABLE