IOCTL_STORAGE_SET_PROPERTY IOCTL (ntddstor.h)
A driver can use IOCTL_STORAGE_SET_PROPERTY to set the properties of a storage device or adapter.
Note
Due to colliding IOCTL definitions in Windows 10 version 2004, existing software that uses IOCTL_STORAGE_SET_PROPERTY will need to be recompiled on Windows Server 2022.
Major code
Input buffer
Contains a STORAGE_PROPERTY_SET structure that describes the type of set being done, the property being set, and any additional parameters that a particular property set requires. A structure with additional properties can be found immediately after the STORAGE_PROPERTY_SET structure, depending on STORAGE_PROPERTY_SET's PropertyId. For example, if PropertyId is StorageAdapterProtocolSpecificProperty, then a STORAGE_PROTOCOL_SPECIFIC_DATA_EXT structure immediately follows STORAGE_PROPERTY_SET.
Input buffer length
Parameters.DeviceIoControl.InputBufferLength indicates the size, in bytes, of the parameter buffer at Irp->AssociatedIrp.SystemBuffer, which must be >= sizeof(STORAGE_PROPERTY_SET).
Output buffer
Depends on the specified PropertyId. For example, if PropertyId is StorageAdapterProtocolSpecificProperty, then the output buffer contains a STORAGE_PROTOCOL_SPECIFIC_DATA_EXT structure with updated data from the miniport.
Output buffer length
Size, in bytes, of the output buffer.
Input / Output buffer
n/a
Input / Output buffer length
n/a
Status block
Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status to the appropriate error condition as a NTSTATUS code. For more information, see NTSTATUS Values.
Requirements
Requirement | Value |
---|---|
Header | ntddstor.h |