struktur STORAGE_DEVICE_DESCRIPTOR (ntddstor.h)
Struktur STORAGE_DEVICE_DESCRIPTOR digunakan bersama dengan permintaan IOCTL_STORAGE_QUERY_PROPERTY untuk mengambil data deskriptor perangkat penyimpanan untuk perangkat.
Sintaks
typedef struct _STORAGE_DEVICE_DESCRIPTOR {
ULONG Version;
ULONG Size;
UCHAR DeviceType;
UCHAR DeviceTypeModifier;
BOOLEAN RemovableMedia;
BOOLEAN CommandQueueing;
ULONG VendorIdOffset;
ULONG ProductIdOffset;
ULONG ProductRevisionOffset;
ULONG SerialNumberOffset;
STORAGE_BUS_TYPE BusType;
ULONG RawPropertiesLength;
UCHAR RawDeviceProperties[1];
} STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;
Anggota
Version
Menunjukkan ukuran struktur STORAGE_DEVICE_DESCRIPTOR . Nilai anggota ini akan berubah saat anggota ditambahkan ke struktur.
Size
Menentukan ukuran total deskriptor dalam byte, termasuk string ID yang ditambahkan ke struktur.
DeviceType
Menentukan jenis perangkat seperti yang ditentukan oleh spesifikasi Small Computer Systems Interface (SCSI).
DeviceTypeModifier
Menentukan pengubah jenis perangkat, jika ada, seperti yang ditentukan oleh spesifikasi SCSI. Jika tidak ada pengubah jenis perangkat, anggota ini adalah nol.
RemovableMedia
Menunjukkan kapan TRUE bahwa media perangkat (jika ada) dapat dilepas. Jika perangkat tidak memiliki media, anggota ini harus diabaikan. Ketika FALSE , media perangkat tidak dapat dilepas.
CommandQueueing
Menunjukkan kapan TRUE bahwa perangkat mendukung beberapa perintah yang luar biasa (antrean bertag SCSI atau setara). Ketika FALSE, perangkat tidak mendukung antrean bertag SCSI atau yang setara. Driver STORPORT bertanggung jawab untuk menyinkronkan perintah.
VendorIdOffset
Menentukan offset byte dari awal struktur ke string ASCII yang dihentikan NULL yang berisi ID vendor perangkat. Jika perangkat tidak memiliki ID vendor, anggota ini adalah nol.
ProductIdOffset
Menentukan offset byte dari awal struktur ke string ASCII yang dihentikan NULL yang berisi ID produk perangkat. Jika perangkat tidak memiliki ID produk, anggota ini adalah nol.
ProductRevisionOffset
Menentukan offset byte dari awal struktur ke string ASCII yang dihentikan NULL yang berisi string revisi produk perangkat. Jika perangkat tidak memiliki string revisi produk, anggota ini adalah nol.
SerialNumberOffset
Menentukan offset byte dari awal struktur ke string ASCII yang dihentikan NULL yang berisi nomor seri perangkat. Jika perangkat tidak memiliki nomor seri, anggota ini adalah nol.
BusType
Menentukan nilai enumerator jenis STORAGE_BUS_TYPE yang menunjukkan jenis bus yang tersambung dengan perangkat. Ini harus digunakan untuk menginterpretasikan properti perangkat mentah di akhir struktur ini (jika ada).
RawPropertiesLength
Menunjukkan jumlah byte data khusus bus yang telah ditambahkan ke deskriptor ini.
RawDeviceProperties[1]
Berisi array panjang yang berfungsi sebagai placehold untuk byte pertama dari data properti tertentu bus.
Keterangan
Aplikasi dan driver kelas penyimpanan mengeluarkan permintaan kontrol perangkat dengan kode kontrol I/O IOCTL_STORAGE_QUERY_PROPERTY untuk mengambil struktur ini, yang berisi informasi tentang perangkat target. Struktur hanya dapat diambil dari FDO; mencoba mengambil properti perangkat dari adaptor menyebabkan kesalahan.
Aplikasi atau driver dapat menentukan ukuran buffer yang diperlukan dengan mentransmisikan struktur STORAGE_DEVICE_DESCRIPTOR yang diambil ke STORAGE_DESCRIPTOR_HEADER, yang hanya berisi Versi dan Ukuran.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | ntddstor.h (termasuk Ntddstor.h) |