STORAGE_PROTOCOL_SPECIFIC_DATA 構造体 (ntddstor.h)
IOCTL_STORAGE_QUERY_PROPERTY 要求の入出力のバッファーで提供される、プロトコル固有のデバイス データについて説明します。
構文
typedef struct _STORAGE_PROTOCOL_SPECIFIC_DATA {
STORAGE_PROTOCOL_TYPE ProtocolType;
ULONG DataType;
ULONG ProtocolDataRequestValue;
ULONG ProtocolDataRequestSubValue;
ULONG ProtocolDataOffset;
ULONG ProtocolDataLength;
ULONG FixedProtocolReturnData;
ULONG ProtocolDataRequestSubValue2;
ULONG ProtocolDataRequestSubValue3;
ULONG ProtocolDataRequestSubValue4;
} STORAGE_PROTOCOL_SPECIFIC_DATA, *PSTORAGE_PROTOCOL_SPECIFIC_DATA;
メンバー
ProtocolType
プロトコルの種類。 このメンバーの値は、 STORAGE_PROTOCOL_TYPE 列挙で定義されます。
DataType
プロトコル データ型。 データ型は、 STORAGE_PROTOCOL_NVME_DATA_TYPE および STORAGE_PROTOCOL_ATA_DATA_TYPE 列挙で定義されます。
ProtocolDataRequestValue
プロトコル データ要求値。
ProtocolDataRequestSubValue
プロトコル データ要求のサブ値。
ProtocolDataOffset
この構造体の先頭からのデータ バッファーのオフセット。 一般的な値は sizeof(STORAGE_PROTOCOL_SPECIFIC_DATA) です。
ProtocolDataLength
プロトコル データの長さ。 ProtocolDataLength は 512 バイトにする >必要があります。
FixedProtocolReturnData
返されたデータ。
ProtocolDataRequestSubValue2
最初の追加データ サブ要求値。
ProtocolDataRequestSubValue3
2 番目の追加データ サブ要求値。
ProtocolDataRequestSubValue4
3 番目の追加データ サブ要求値。
注釈
IOCTL_STORAGE_QUERY_PROPERTYを使用してSTORAGE_PROTOCOL_DATA_DESCRIPTOR内のプロトコル固有の情報を取得する場合は、次のようにSTORAGE_PROPERTY_QUERY構造を構成します。
- STORAGE_PROPERTY_QUERY と STORAGE_PROTOCOL_SPECIFIC_DATA 構造体の両方を含むことができるバッファーを割り当てます。
- コントローラー要求の場合は PropertyID フィールドを StorageAdapterProtocolSpecificProperty に、デバイス/名前空間要求の場合は StorageDeviceProtocolSpecificProperty にそれぞれ設定します。
- QueryType フィールドを PropertyStandardQuery に設定します。
- STORAGE_PROTOCOL_SPECIFIC_DATA 構造体に必要な値を入力します。 STORAGE_PROTOCOL_SPECIFIC_DATAの先頭は、STORAGE_PROPERTY_QUERYの AdditionalParameters フィールドです。
NVMe プロトコル固有の情報の種類を指定するには、STORAGE_PROTOCOL_SPECIFIC_DATA 構造体を次のように構成します。
- ProtocolType フィールドを ProtocolTypeNVMe に設定します。
- DataType フィールドを STORAGE_PROTOCOL_NVME_DATA_TYPE で定義された列挙値に設定します。
- NVMeDataTypeIdentify を使用して、コントローラーデータの識別または名前空間データの識別を行います。
- NVMeDataTypeLogPage を使用してログ ページ (SMART/正常性データを含む) を取得します。
- NVMe ドライブの機能を取得するための NVMeDataTypeFeature。
ATA プロトコル固有の情報の種類を指定するには、次のようにSTORAGE_PROTOCOL_SPECIFIC_DATA構造を構成します。
- [ProtocolType] フィールドを ProtocolTypeAta に設定します。
- DataType フィールドを、STORAGE_PROTOCOL_ATA_DATA_TYPEによって定義された列挙値に設定します。
- ATA ドライブを識別するには、 AtaDataTypeIdentify を使用します。
- ATA ドライブからログ ページを取得するには、 AtaDataTypeLogPage を使用します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 |
サポートされている最小のサーバー | Windows Server 2016 |
Header | ntddstor.h (Ntddstor.h を含む) |