STORAGE_PROTOCOL_DATA_DESCRIPTOR struttura (winioctl.h)

Questa struttura viene usata in combinazione con IOCTL_STORAGE_QUERY_PROPERTY per restituire dati specifici del protocollo da un dispositivo o un adattatore di archiviazione. .

Sintassi

typedef struct _STORAGE_PROTOCOL_DATA_DESCRIPTOR {
  DWORD                          Version;
  DWORD                          Size;
  STORAGE_PROTOCOL_SPECIFIC_DATA ProtocolSpecificData;
} STORAGE_PROTOCOL_DATA_DESCRIPTOR, *PSTORAGE_PROTOCOL_DATA_DESCRIPTOR;

Members

Version

Versione di questa struttura.

Size

Dimensioni totali del descrittore, incluso lo spazio per tutti i dati del protocollo.

ProtocolSpecificData

Dati specifici del protocollo, di tipo STORAGE_PROTOCOL_SPECIFIC_DATA.

Commenti

Quando si usa IOCTL_STORAGE_QUERY_PROPERTY per recuperare informazioni specifiche del protocollo nella STORAGE_PROTOCOL_DATA_DESCRIPTOR, configurare la struttura di STORAGE_PROPERTY_QUERY come indicato di seguito:

  • Allocare un buffer che può contenere sia una STORAGE_PROPERTY_QUERY che una struttura STORAGE_PROTOCOL_SPECIFIC_DATA .
  • Impostare il campo PropertyID su StorageAdapterProtocolSpecificProperty o StorageDeviceProtocolSpecificProperty per una richiesta controller o dispositivo/spazio dei nomi rispettivamente.
  • Impostare il campo QueryType su PropertyStandardQuery.
  • Riempire la struttura STORAGE_PROTOCOL_SPECIFIC_DATA con i valori desiderati. L'inizio della STORAGE_PROTOCOL_SPECIFIC_DATA è il campo AdditionalParameters di STORAGE_PROPERTY_QUERY.
Per specificare un tipo di informazioni specifiche del protocollo NVMe, configurare la struttura STORAGE_PROTOCOL_SPECIFIC_DATA come indicato di seguito:
  • Impostare il campo ProtocolType su ProtocolTypeNVMe.
  • Impostare il campo DataType su un valore di enumerazione definito da STORAGE_PROTOCOL_NVME_DATA_TYPE:
    • Usare NVMeDataTypeIdentify per ottenere i dati del controller di identificazione o identificare i dati dello spazio dei nomi.
    • Usare NVMeDataTypeLogPage per ottenere pagine di log (inclusi i dati smart/health).
    • Usare NVMeDataTypeFeature per ottenere funzionalità dell'unità NVMe.
Per specificare un tipo di informazioni specifiche del protocollo ATA, configurare la struttura STORAGE_PROTOCOL_SPECIFIC_DATA come indicato di seguito:
  • Impostare il campo ProtocolType su ProtocolTypeAta.
  • Impostare il campo DataType su un valore di enumerazione definito da STORAGE_PROTOCOL_ATA_DATA_TYPE:
    • Usare AtaDataTypeIdentify per identificare l'unità ATA.
    • Usare AtaDataTypeLogPage per ottenere pagine di log dall'unità ATA.

Requisiti

Requisito Valore
Client minimo supportato Windows 10
Server minimo supportato Windows Server 2016
Intestazione winioctl.h (include Windows.h)

Vedi anche

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_QUERY

STORAGE_PROTOCOL_SPECIFIC_DATA