STORAGE_PHYSICAL_DEVICE_DATA structure (winioctl.h)
Describes a physical storage device.
Syntax
typedef struct _STORAGE_PHYSICAL_DEVICE_DATA {
DWORD DeviceId;
DWORD Role;
STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
STORAGE_PROTOCOL_TYPE CommandProtocol;
STORAGE_SPEC_VERSION SpecVersion;
STORAGE_DEVICE_FORM_FACTOR FormFactor;
BYTE Vendor[8];
BYTE Model[40];
BYTE FirmwareRevision[16];
DWORDLONG Capacity;
BYTE PhysicalLocation[32];
DWORD Reserved[2];
} STORAGE_PHYSICAL_DEVICE_DATA, *PSTORAGE_PHYSICAL_DEVICE_DATA;
Members
DeviceId
Specifies the device ID.
Role
Value(s) of bitmask from STORAGE_COMPONENT_ROLE_xxx
HealthStatus
A STORAGE_COMPONENT_HEALTH_STATUS enumeration.
CommandProtocol
A STORAGE_PROTOCOL_TYPE enumeration.
SpecVersion
A STORAGE_SPEC_VERSION structure that specifies the supported storage spec version. For example: SBC 3, SATA 3.2, NVMe 1.2
FormFactor
A STORAGE_DEVICE_FORM_FACTOR enumeration.
Vendor[8]
Specifies the device vendor.
Model[40]
Specifies the device model.
FirmwareRevision[16]
Specifies the firmware revision of the device.
Capacity
In units of kilobytes (1024 bytes).
PhysicalLocation[32]
Reserved for future use.
Reserved[2]
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 10 [desktop apps only] |
Minimum supported server | Windows Server 2016 [desktop apps only] |
Header | winioctl.h (include Windows.h) |