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)

Lihat juga

IOCTL_STORAGE_QUERY_PROPERTY

IoBuildDeviceIoControlRequest

STORAGE_ADAPTER_DESCRIPTOR

STORAGE_BUS_TYPE

STORAGE_DESCRIPTOR_HEADER

STORAGE_DEVICE_DESCRIPTOR

STORAGE_DEVICE_ID_DESCRIPTOR