struktur STORAGE_PROTOCOL_SPECIFIC_DATA (winioctl.h)
Menjelaskan data perangkat khusus protokol, yang disediakan dalam buffer input dan output permintaan IOCTL_STORAGE_QUERY_PROPERTY .
Sintaks
typedef struct _STORAGE_PROTOCOL_SPECIFIC_DATA {
STORAGE_PROTOCOL_TYPE ProtocolType;
DWORD DataType;
DWORD ProtocolDataRequestValue;
DWORD ProtocolDataRequestSubValue;
DWORD ProtocolDataOffset;
DWORD ProtocolDataLength;
DWORD FixedProtocolReturnData;
DWORD ProtocolDataRequestSubValue2;
DWORD ProtocolDataRequestSubValue3;
DWORD ProtocolDataRequestSubValue4;
} STORAGE_PROTOCOL_SPECIFIC_DATA, *PSTORAGE_PROTOCOL_SPECIFIC_DATA;
Anggota
ProtocolType
Jenis protokol. Nilai untuk anggota ini ditentukan dalam enumerasi STORAGE_PROTOCOL_TYPE .
DataType
Jenis data protokol. Jenis data ditentukan dalam enumerasi STORAGE_PROTOCOL_NVME_DATA_TYPE dan STORAGE_PROTOCOL_ATA_DATA_TYPE .
ProtocolDataRequestValue
Nilai permintaan data protokol.
ProtocolDataRequestSubValue
Sub nilai permintaan data protokol.
ProtocolDataOffset
Offset buffer data yang berasal dari awal struktur ini. Nilai umumnya bisa ukuranof(STORAGE_PROTOCOL_SPECIFIC_DATA).
ProtocolDataLength
Panjang data protokol.
FixedProtocolReturnData
Data yang dikembalikan.
ProtocolDataRequestSubValue2
ProtocolDataRequestSubValue3
ProtocolDataRequestSubValue4
Keterangan
Saat menggunakan IOCTL_STORAGE_QUERY_PROPERTY untuk mengambil informasi khusus protokol di STORAGE_PROTOCOL_DATA_DESCRIPTOR, konfigurasikan struktur STORAGE_PROPERTY_QUERY sebagai berikut:
- Alokasikan buffer yang dapat berisi struktur STORAGE_PROPERTY_QUERY dan STORAGE_PROTOCOL_SPECIFIC_DATA .
- Atur bidang PropertyID ke StorageAdapterProtocolSpecificProperty atau StorageDeviceProtocolSpecificProperty untuk permintaan pengontrol atau perangkat/namespace.
- Atur bidang QueryType ke PropertyStandardQuery.
- Isi struktur STORAGE_PROTOCOL_SPECIFIC_DATA dengan nilai yang diinginkan. Awal STORAGE_PROTOCOL_SPECIFIC_DATA adalah bidang AdditionalParametersdari STORAGE_PROPERTY_QUERY.
- Atur bidang ProtocolType ke ProtocolTypeNVMe.
-
Atur bidang DataType ke nilai enumerasi yang ditentukan oleh STORAGE_PROTOCOL_NVME_DATA_TYPE:
- Gunakan NVMeDataTypeIdentify untuk mendapatkan data Identifi Controller atau Mengidentifikasi data Namespace.
- Gunakan NVMeDataTypeLogPage untuk mendapatkan halaman log (termasuk data SMART/health).
- Gunakan NVMeDataTypeFeature untuk mendapatkan fitur drive NVMe.
- Atur bidang ProtocolType ke ProtocolTypeAta.
-
Atur bidang DataType ke nilai enumerasi yang ditentukan oleh STORAGE_PROTOCOL_ATA_DATA_TYPE:
- Gunakan AtaDataTypeIdentify untuk mengidentifikasi drive ATA.
- Gunakan AtaDataTypeLogPage untuk mendapatkan halaman log dari drive ATA.
Persyaratan
Klien minimum yang didukung | Windows 10 |
Server minimum yang didukung | Server Windows 2016 |
Header | winioctl.h (termasuk Windows.h) |