共用方式為


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_TYPESTORAGE_PROTOCOL_ATA_DATA_TYPE 列舉中。

ProtocolDataRequestValue

通訊協議數據要求值。

ProtocolDataRequestSubValue

通訊協議數據要求的子值。

ProtocolDataOffset

從這個 結構開頭開始的數據緩衝區位移。 一般值可以是 sizeof (STORAGE_PROTOCOL_SPECIFIC_DATA) 。

ProtocolDataLength

通訊協議數據的長度。 ProtocolDataLength 必須 >= 512 個字節。

FixedProtocolReturnData

傳回的數據。

ProtocolDataRequestSubValue2

第一個額外的數據子要求值。

ProtocolDataRequestSubValue3

第二個額外的數據子要求值。

ProtocolDataRequestSubValue4

第三個額外的數據子要求值。

備註

使用 IOCTL_STORAGE_QUERY_PROPERTY 擷取 STORAGE_PROTOCOL_DATA_DESCRIPTOR中的通訊協定特定資訊時,請設定 STORAGE_PROPERTY_QUERY 結構,如下所示:

  • 配置可同時包含 STORAGE_PROPERTY_QUERYSTORAGE_PROTOCOL_SPECIFIC_DATA 結構的緩衝區。
  • 分別將 Controller 或裝置/命名空間要求的 PropertyID 字段設定為 StorageAdapterProtocolSpecificPropertyStorageDeviceProtocolSpecificProperty
  • QueryType 字段設定為 PropertyStandardQuery
  • 使用所需的值填入STORAGE_PROTOCOL_SPECIFIC_DATA結構。 STORAGE_PROTOCOL_SPECIFIC_DATA的開頭是 STORAGE_PROPERTY_QUERYAdditionalParameters 字段。

若要指定 NVMe 通訊協定特定資訊的類型,請設定STORAGE_PROTOCOL_SPECIFIC_DATA結構,如下所示:

  • [ProtocolType] 字段設定為 ProtocolTypeNVMe
  • DataType 欄位設定為 STORAGE_PROTOCOL_NVME_DATA_TYPE所定義的列舉值:
    • NVMeDataTypeIdentify 可取得識別控制器數據或識別命名空間數據。
    • NVMeDataTypeLogPage 可取得記錄頁面, (包括 SMART/health 數據) 。
    • NVMeDataTypeFeature 可取得 NVMe 磁碟驅動器的功能。

若要指定 ATA 通訊協定特定資訊的類型,請設定STORAGE_PROTOCOL_SPECIFIC_DATA結構,如下所示:

  • [ProtocolType] 字段設定為 ProtocolTypeAta
  • DataType 欄位設定為 STORAGE_PROTOCOL_ATA_DATA_TYPE所定義的列舉值:
    • 使用 AtaDataTypeIdentify 來識別 ATA 磁碟驅動器。
    • 使用 AtaDataTypeLogPage 從 ATA 磁碟驅動器取得記錄頁面。

規格需求

需求
最低支援的用戶端 Windows 10
最低支援的伺服器 Windows Server 2016
標頭 ntddstor.h (包含 Ntddstor.h)

另請參閱

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_ID

STORAGE_PROPERTY_QUERY

STORAGE_PROTOCOL_SPECIFIC_DATA_EXT