Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Enumerates the possible values of the PropertyId member of the STORAGE_PROPERTY_QUERY structure passed as input to the IOCTL_STORAGE_QUERY_PROPERTY request to retrieve the properties of a storage device or adapter.
Syntax
typedef enum _STORAGE_PROPERTY_ID {
StorageDeviceProperty = 0,
StorageAdapterProperty,
StorageDeviceIdProperty,
StorageDeviceUniqueIdProperty,
StorageDeviceWriteCacheProperty,
StorageMiniportProperty,
StorageAccessAlignmentProperty,
StorageDeviceSeekPenaltyProperty,
StorageDeviceTrimProperty,
StorageDeviceWriteAggregationProperty,
StorageDeviceDeviceTelemetryProperty,
StorageDeviceLBProvisioningProperty,
StorageDevicePowerProperty,
StorageDeviceCopyOffloadProperty,
StorageDeviceResiliencyProperty,
StorageDeviceMediumProductType,
StorageAdapterRpmbProperty,
StorageAdapterCryptoProperty,
StorageDeviceIoCapabilityProperty = 48,
StorageAdapterProtocolSpecificProperty,
StorageDeviceProtocolSpecificProperty,
StorageAdapterTemperatureProperty,
StorageDeviceTemperatureProperty,
StorageAdapterPhysicalTopologyProperty,
StorageDevicePhysicalTopologyProperty,
StorageDeviceAttributesProperty,
StorageDeviceManagementStatus,
StorageAdapterSerialNumberProperty,
StorageDeviceLocationProperty,
StorageDeviceNumaProperty,
StorageDeviceZonedDeviceProperty,
StorageDeviceUnsafeShutdownCount,
StorageDeviceEnduranceProperty,
StorageDeviceLedStateProperty,
StorageDeviceSelfEncryptionProperty = 64,
StorageFruIdProperty,
StorageStackProperty,
StorageAdapterProtocolSpecificPropertyEx,
StorageDeviceProtocolSpecificPropertyEx,
StorageHwCryptoProperty
} STORAGE_PROPERTY_ID, *PSTORAGE_PROPERTY_ID;
Constants
StorageDeviceProperty Value: 0 Indicates that the caller is querying for the device descriptor, STORAGE_DEVICE_DESCRIPTOR. |
StorageAdapterProperty Indicates that the caller is querying for the adapter descriptor, STORAGE_ADAPTER_DESCRIPTOR. |
StorageDeviceIdProperty Indicates that the caller is querying for the device identifiers provided with the SCSI vital product data pages. Data is returned using the STORAGE_DEVICE_ID_DESCRIPTOR structure. |
StorageDeviceUniqueIdProperty Intended for driver usage. Indicates that the caller is querying for the unique device identifiers. Data is returned using the STORAGE_DEVICE_UNIQUE_IDENTIFIER structure (see the storduid.h header in the DDK). Windows Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008. |
StorageDeviceWriteCacheProperty Indicates that the caller is querying for the write cache property. Data is returned using the STORAGE_WRITE_CACHE_PROPERTY structure. Windows Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008. |
StorageMiniportProperty Reserved for system use. |
StorageAccessAlignmentProperty Indicates that the caller is querying for the access alignment descriptor, STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR. Windows Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008. |
StorageDeviceSeekPenaltyProperty Indicates that the caller is querying for the seek penalty descriptor, DEVICE_SEEK_PENALTY_DESCRIPTOR. Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows Server 2008 R2. |
StorageDeviceTrimProperty Indicates that the caller is querying for the trim descriptor, DEVICE_TRIM_DESCRIPTOR. Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows Server 2008 R2. |
StorageDeviceWriteAggregationProperty Reserved for system use. |
StorageDeviceDeviceTelemetryProperty Reserved for system use. |
StorageDeviceLBProvisioningProperty Indicates that the caller is querying for the logical block provisioning property. Data is returned using the DEVICE_LB_PROVISIONING_DESCRIPTOR structure. Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 8 and Windows Server 2012. |
StorageDevicePowerProperty Indicates that the caller is querying for the device power descriptor. Data is returned using the DEVICE_POWER_DESCRIPTOR structure. Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 8 and Windows Server 2012. |
StorageDeviceCopyOffloadProperty Indicates that the caller is querying for the copy offload parameters property. Data is returned using the DEVICE_COPY_OFFLOAD_DESCRIPTOR structure. Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 8 and Windows Server 2012. |
StorageDeviceResiliencyProperty Reserved for system use. |
StorageDeviceMediumProductType Indicates that the caller is querying for the medium product type. Data is returned using the STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR structure. |
StorageAdapterRpmbProperty Indicates that the caller is querying for RPMB support and properties. Data is returned using the STORAGE_RPMB_DESCRIPTOR structure. |
StorageAdapterCryptoProperty Provides info on the storage adapter encryption capabilities. This is currently supported on UFS (Universal Flash Storage) adapters. |
StorageDeviceIoCapabilityProperty Value: 48 Indicates that the caller is querying for the device I/O capability property. Data is returned using the DEVICE_IO_CAPABILITY_DESCRIPTOR structure. |
StorageAdapterProtocolSpecificProperty Indicates that the caller is querying for protocol-specific data from the adapter. Data is returned using the STORAGE_PROTOCOL_DATA_DESCRIPTOR structure. See the remarks for more info. |
StorageDeviceProtocolSpecificProperty Indicates that the caller is querying for protocol-specific data from the device. Data is returned using the STORAGE_PROTOCOL_DATA_DESCRIPTOR structure. See the remarks for more info. |
StorageAdapterTemperatureProperty Indicates that the caller is querying temperature data from the adapter. Data is returned using the STORAGE_TEMPERATURE_DATA_DESCRIPTOR structure. |
StorageDeviceTemperatureProperty Indicates that the caller is querying for temperature data from the device. Data is returned using the STORAGE_TEMPERATURE_DATA_DESCRIPTOR structure. |
StorageAdapterPhysicalTopologyProperty Indicates that the caller is querying for topology information from the adapter. Data is returned using the STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR structure. |
StorageDevicePhysicalTopologyProperty Indicates that the caller is querying for topology information from the device. Data is returned using the STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR structure. |
StorageDeviceAttributesProperty Reserved for future use. |
StorageDeviceManagementStatus Provides health information about the storage device (specifically for the persistent memory stack). |
StorageAdapterSerialNumberProperty Indicates that the caller is querying for the adapter serial number. Data is returned using the STORAGE_ADAPTER_SERIAL_NUMBER structure. |
StorageDeviceLocationProperty Reserved for system use. |
StorageDeviceNumaProperty Provides the non-uniform memory access (NUMA) node of the storage device. |
StorageDeviceZonedDeviceProperty Reserved for system use. |
StorageDeviceUnsafeShutdownCount Provides the unsafe shutdown count value used to determine if the device data might have been lost during a power loss event (specifically for the persistent memory stack). |
StorageDeviceEnduranceProperty Provides info on how many bytes have been read/write from a solid-state drive (SSD). This property is supported only for Non-Volatile Memory Express (NVMe) devices that implement a certain NVMe feature. |
StorageDeviceLedStateProperty Provides info on the state of the LED associated with a storage device. This is a server-oriented feature. |
StorageDeviceSelfEncryptionProperty Value: 64 Reserved for system use. |
StorageFruIdProperty Provides identification info for a storage device that can be physically replaced with a Field Replacement Unit (FRU). |
Remarks
The optional output buffer returned through the lpOutBuffer parameter of the IOCTL_STORAGE_QUERY_PROPERTY control code request can be one of several structures depending on the value of the PropertyId member of the STORAGE_PROPERTY_QUERY structure pointed to by the lpInBuffer parameter. If the QueryType member of the STORAGE_PROPERTY_QUERY is set to PropertyExistsQuery, then no structure is returned.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows XP [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Header | winioctl.h |