// ntddstor.h
typedef struct _STORAGE_PHYSICAL_ADAPTER_DATA {
ULONG AdapterId;
STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
STORAGE_PROTOCOL_TYPE CommandProtocol;
STORAGE_SPEC_VERSION SpecVersion;
UCHAR Vendor[8];
UCHAR Model[40];
UCHAR FirmwareRevision[16];
UCHAR PhysicalLocation[32];
BOOLEAN ExpanderConnected;
UCHAR Reserved0[3];
ULONG Reserved1[3];
} STORAGE_PHYSICAL_ADAPTER_DATA, *PSTORAGE_PHYSICAL_ADAPTER_DATA;
View the official Windows Driver Kit DDI reference// winioctl.h
typedef struct _STORAGE_PHYSICAL_ADAPTER_DATA {
DWORD AdapterId;
STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
STORAGE_PROTOCOL_TYPE CommandProtocol;
STORAGE_SPEC_VERSION SpecVersion;
BYTE Vendor[8];
BYTE Model[40];
BYTE FirmwareRevision[16];
BYTE PhysicalLocation[32];
BOOLEAN ExpanderConnected;
BYTE Reserved0[3];
DWORD Reserved1[3];
} STORAGE_PHYSICAL_ADAPTER_DATA, *PSTORAGE_PHYSICAL_ADAPTER_DATA;
View the official Win32 API referenceNo description available.
Specifies the physical data of a storage adapter.
AdapterIdThe hardware ID of the storage adapter.
HealthStatusA STORAGE_COMPONENT_HEALTH_STATUS value that indicates the health status of a storage adapter.
CommandProtocolA STORAGE_PROTOCOL_TYPE value that specifies the storage command protocols that are used between software and hardware.
SpecVersionA STORAGE_SPEC_VERSION structure that specifies the storage specification version of the storage adapter.
Vendor[8]The vendor name of the storage adapter
Model[40]The model name of the storage adapter.
FirmwareRevision[16]The firmware revision number of the storage adapter.
PhysicalLocation[32]This member is reserved for future use.
ExpanderConnectedIndicates whether a storage expander is connected to the storage adapter.
Reserved0[3]Reserved; do not use.
Reserved1[3]Reserved; do not use.
Describes a physical storage adapter.
AdapterIdSpecifies the adapter ID.
HealthStatusA STORAGE_COMPONENT_HEALTH_STATUS-typed value.
CommandProtocolA STORAGE_PROTOCOL_TYPE-typed value.
SpecVersionA STORAGE_SPEC_VERSION-typed value that specifies the supported storage spec version (for example, AHCI 1.3.1).
ExpanderConnectedIndicates whether an expander is connected.
FirmwareRevisionSpecifies the firmware revision.
ModelSpecifies the adapter model.
PhysicalLocationReserved for future use.
Reserved0Reserved.
Reserved1Reserved.
VendorSpecifies the adapter vendor.