структура STORAGE_PROTOCOL_DATA_DESCRIPTOR (ntddstor.h)
Эта структура используется в сочетании с IOCTL_STORAGE_SET_PROPERTY и IOCTL_STORAGE_QUERY_PROPERTY для установки или запроса данных, относящихся к протоколу, с запоминающего устройства или адаптера.
Синтаксис
typedef struct _STORAGE_PROTOCOL_DATA_DESCRIPTOR {
ULONG Version;
ULONG Size;
STORAGE_PROTOCOL_SPECIFIC_DATA ProtocolSpecificData;
} STORAGE_PROTOCOL_DATA_DESCRIPTOR, *PSTORAGE_PROTOCOL_DATA_DESCRIPTOR;
Члены
Version
Версия этой структуры. Задайте для параметра sizeof(STORAGE_PROTOCOL_DATA_DESCRIPTOR).
Size
Общий размер дескриптора в байтах, включая пространство для всех данных протокола. Должен иметь значение =>sizeof(STORAGE_PROTOCOL_DATA_DESCRIPTOR).
ProtocolSpecificData
Данные, относящиеся к протоколу, типа STORAGE_PROTOCOL_SPECIFIC_DATA.
Комментарии
При использовании 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 — это поле AdditionalParametersSTORAGE_PROPERTY_QUERY.
Чтобы указать тип сведений, относящихся к протоколу 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) |