Freigeben über


STORAGE_DEVICE_DESCRIPTOR Struktur (ntddstor.h)

Die STORAGE_DEVICE_DESCRIPTOR-Struktur wird in Verbindung mit der IOCTL_STORAGE_QUERY_PROPERTY Anforderung verwendet, um die Daten zum Deskriptor des Speichergeräts für ein Gerät abzurufen.

Syntax

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;

Angehörige

Version

Gibt die Größe der STORAGE_DEVICE_DESCRIPTOR Struktur an. Der Wert dieses Elements ändert sich, wenn Elemente der Struktur hinzugefügt werden.

Size

Gibt die Gesamtgröße des Deskriptors in Bytes an, einschließlich ID-Zeichenfolgen, die an die Struktur angefügt werden.

DeviceType

Gibt den Gerätetyp gemäß definition der Spezifikation "Small Computer Systems Interface (SCSI)" an.

DeviceTypeModifier

Gibt den Gerätetypmodifizierer (sofern vorhanden) gemäß der SCSI-Spezifikation an. Wenn kein Gerätetypmodifizierer vorhanden ist, ist dieses Element null.

RemovableMedia

Gibt an, wann TRUE, dass die Medien des Geräts (sofern vorhanden) wechselbar sind. Wenn das Gerät über keine Medien verfügt, sollte dieses Element ignoriert werden. Wenn FALSE die Medien des Geräts nicht wechselbar sind.

CommandQueueing

Gibt an, wann TRUE-, dass das Gerät mehrere ausstehende Befehle unterstützt (SCSI-markierte Warteschlange oder gleichwertig). Wenn FALSE-, unterstützt das Gerät keine SCSI-markierte Warteschlange oder die Entsprechung. Der STORPORT-Treiber ist für die Synchronisierung der Befehle verantwortlich.

VendorIdOffset

Gibt den Byteoffset vom Anfang der Struktur auf eine NULL--terminated ASCII-Zeichenfolge an, die die Anbieter-ID des Geräts enthält. Wenn das Gerät keine Anbieter-ID aufweist, ist dieses Mitglied null.

ProductIdOffset

Gibt den Byteoffset vom Anfang der Struktur auf eine NULL--terminated ASCII-Zeichenfolge an, die die Produkt-ID des Geräts enthält. Wenn das Gerät keine Produkt-ID aufweist, ist dieses Element null.

ProductRevisionOffset

Gibt den Byteoffset vom Anfang der Struktur auf eine NULL--terminated ASCII-Zeichenfolge an, die die Produktrevisionszeichenfolge des Geräts enthält. Wenn das Gerät über keine Produktrevisionszeichenfolge verfügt, ist dieses Element null.

SerialNumberOffset

Gibt den Byteoffset vom Anfang der Struktur auf eine NULL--terminated ASCII-Zeichenfolge an, die die Seriennummer des Geräts enthält. Wenn das Gerät keine Seriennummer hat, ist dieses Element null.

BusType

Gibt einen Enumerationswert vom Typ STORAGE_BUS_TYPE an, der den Typ des Bus angibt, mit dem das Gerät verbunden ist. Dies sollte verwendet werden, um die Rohgeräteeigenschaften am Ende dieser Struktur (falls vorhanden) zu interpretieren.

RawPropertiesLength

Gibt die Anzahl der Bytes von busspezifischen Daten an, die an diesen Deskriptor angefügt wurden.

RawDeviceProperties[1]

Enthält ein Array von Länge 1, das als Platzhalter für das erste Byte der busspezifischen Eigenschaftsdaten dient.

Bemerkungen

Anwendungs- und Speicherklassentreiber stellen eine Gerätesteuerungsanforderung mit dem E/A-Steuerelementcode IOCTL_STORAGE_QUERY_PROPERTY aus, um diese Struktur abzurufen, die Informationen zu einem Zielgerät enthält. Die Struktur kann nur aus einem FDO abgerufen werden; Der Versuch, Geräteeigenschaften von einem Adapter abzurufen, verursacht einen Fehler.

Eine Anwendung oder ein Treiber kann die erforderliche Puffergröße bestimmen, indem sie die abgerufene STORAGE_DEVICE_DESCRIPTOR Struktur in eine STORAGE_DESCRIPTOR_HEADERumwandeln, die nur Version und Größeenthält.

Anforderungen

Anforderung Wert
Header- ntddstor.h (include Ntddstor.h)

Siehe auch

IOCTL_STORAGE_QUERY_PROPERTY

IoBuildDeviceIoControlRequest

STORAGE_ADAPTER_DESCRIPTOR

STORAGE_BUS_TYPE

STORAGE_DESCRIPTOR_HEADER

STORAGE_DEVICE_DESCRIPTOR

STORAGE_DEVICE_ID_DESCRIPTOR