Freigeben über


CHANGER_ELEMENT_STATUS_EX-Struktur (ntddchgr.h)

Die ChangerGetElementStatus-Routine gibt status Informationen in dieser Struktur zurück.

Syntax

typedef struct _CHANGER_ELEMENT_STATUS_EX {
  CHANGER_ELEMENT Element;
  CHANGER_ELEMENT SrcElementAddress;
  ULONG           Flags;
  ULONG           ExceptionCode;
  UCHAR           TargetId;
  UCHAR           Lun;
  USHORT          Reserved;
  UCHAR           PrimaryVolumeID[MAX_VOLUME_ID_SIZE];
  UCHAR           AlternateVolumeID[MAX_VOLUME_ID_SIZE];
  UCHAR           VendorIdentification[VENDOR_ID_LENGTH];
  UCHAR           ProductIdentification[PRODUCT_ID_LENGTH];
  UCHAR           SerialNumber[SERIAL_NUMBER_LENGTH];
} CHANGER_ELEMENT_STATUS_EX, *PCHANGER_ELEMENT_STATUS_EX;

Member

Element

Gibt das Element vom Typ CHANGER_ELEMENT an, auf das sich diese Struktur bezieht.

SrcElementAddress

Gibt das Element vom Typ CHANGER_ELEMENT an, aus dem die Medien, die sich derzeit in diesem Element befinden, zuletzt verschoben wurden. Dieser Member ist nur gültig, wenn ELEMENT_STATUS_SVALID auch in Flags festgelegt ist. Dieser Wert muss ein nullbasierter Offset vom gerätespezifischen Wert sein.

Flags

Gibt die status des Elements an, bei denen es sich um einen oder mehrere der folgenden Werte handeln kann.

ELEMENT_STATUS_FULL

Das -Element enthält ein Medienelement. Dieses Flag ist gültig, wenn ElementType im ElementelementChangerDrive, ChangerSlot oder ChangerTransport ist. Wenn ElementTypechangerIEPort ist, ist dieses Flag nur gültig, wenn CHANGER_REPORT_IEPORT_STATE auch in Features0 von GET_CHANGER_PARAMETERS festgelegt ist.

ELEMENT_STATUS_IMPEXP

Die Medien in diesem Element wurden von einem Operator dort platziert. Dieses Flag ist nur gültig, wenn ElementType im Element-ElementChangerIEPort ist.

ELEMENT_STATUS_EXCEPT

Das Element befindet sich in einem ungewöhnlichen Zustand. Weitere Informationen finden Sie im ExceptionCode-Element .

ELEMENT_STATUS_ACCESS

Das Transportelement des Changers kann auf das Medienelement in diesem Element zugreifen. Der Miniklassentreiber löscht dieses Flag, um anzugeben, dass die Medien aus einem der folgenden Gründe nicht zugänglich sind: Wenn ElementType im Element-ElementChangerSlot ist, ist der Slot im Wechselschalter nicht vorhanden (z. B. wurde das Magazin, das den Slot enthält, physisch entfernt). Wenn ElementTypeauf ChangerDrive festgelegt ist, ist das Laufwerk beschädigt oder wurde entfernt. Wenn ElementTypeauf ChangerIEPort festgelegt ist, wird der IEport erweitert.

ELEMENT_STATUS_EXENAB

Das -Element unterstützt den Export von Medien über den IEport des Changers.

ELEMENT_STATUS_INENAB

Das -Element unterstützt den Import von Medien über den IEport des Changers.

ELEMENT_STATUS_LUN_VALID

Die Gerätenummer im Lun-Element ist gültig. Dieses Flag ist nur gültig, wenn ElementType im Element-ElementChangerDrive ist.

ELEMENT_STATUS_ID_VALID

Die SCSI-Ziel-ID im TargetID-Member ist gültig. Dieses Flag ist nur gültig, wenn ElementType im Element-ElementChangerDrive ist.

ELEMENT_STATUS_NOT_BUS

Das Laufwerk an der durch Lun und TargetID angegebenen Adresse befindet sich auf einem anderen SCSI-Bus als der Changer selbst.

ELEMENT_STATUS_PRODUCT_DATA

Die Seriennummer im SerialNumber-Member ist gültig.

ELEMENT_STATUS_INVERT

Die Medien im Element wurden umgedreht. Dieses Flag ist nur gültig, wenn auch das flag ELEMENT_STATUS_SVALID festgelegt ist.

ELEMENT_STATUS_SVALID

Das SourceElement-Element und das ELEMENT_STATUS_INVERT-Flag sind beide gültig.

ELEMENT_STATUS_PVOLTAG

Die Informationen des primären Volumes im PrimaryVolumeID-Member sind gültig.

ELEMENT_STATUS_AVOLTAG

Informationen zu alternativen Volumes im AlternateVolumeID-Member sind gültig.

ExceptionCode

Gibt an, dass sich das Element in einem ungewöhnlichen Zustand befindet. Dieser Member ist nur gültig, wenn ELEMENT_STATUS_EXCEPT in Flags festgelegt ist. ExceptionCode kann auf einen der folgenden Werte festgelegt werden.

ERROR_LABEL_UNREADABLE

Der Strichcodeleser des Changers konnte die Barcodebeschriftung auf dem Medienteil in diesem Element nicht lesen, da das Medium fehlt, beschädigt, falsch positioniert oder auf dem Kopf steht.

ERROR_LABEL_QUESTIONABLE

Die Bezeichnung kann aufgrund einer Bedingung für die Aufmerksamkeit der Einheit ungültig sein.

ERROR_SLOT_NOT_PRESENT

Der Slot an dieser Elementadresse ist derzeit nicht im Changer installiert. Ein Miniklassentreiber legt diesen Code für jeden Steckplatz in einem wechselbaren Magazin fest, um anzugeben, dass das Magazin entfernt wurde.

ERROR_DRIVE_NOT_INSTALLED

Das Laufwerk an dieser Elementadresse ist nicht vorhanden. Wenn ein Changer ohne laufwerksfrei weiter betrieben werden kann, legt sein Miniklassentreiber ERROR_DRIVE_NOT_INSTALLED für das Laufwerk fest.

ERROR_TRAY_MALFUNCTION

Das Laufwerk an dieser Elementadresse verfügt über ein Fach, das erweitert werden muss, um Medien zu laden oder zu entfernen, und das Fach wird nicht nach Bedarf erweitert.

ERROR_UNHANDLED_ERROR

Unbekannte Fehlerbedingung.

TargetId

Gibt die SCSI-Ziel-ID des Laufwerks an dieser Elementadresse für einen SCSI-Changer an. Dieser Member ist nur gültig, wenn ElementType im Element-ElementChangerDrive und ELEMENT_STATUS_ID_VALID in Flags festgelegt ist.

Lun

Gibt die SCSI-Gerätenummer des Laufwerks an dieser Elementadresse an. Dieser Member ist nur gültig, wenn ElementType im Element-ElementChangerDrive und ELEMENT_STATUS_LUN_VALID in Flags festgelegt ist.

Reserved

Für die zukünftige Verwendung reserviert. Der Wert dieses Members muss 0 (null) sein.

PrimaryVolumeID[MAX_VOLUME_ID_SIZE]

Gibt den bezeichner des primären Volumes für die Medien an. Wenn der Changer einen Barcodeleser unterstützt und der Reader installiert ist (wie durch CHANGER_BAR_CODE_SCANNER_INSTALLED in Features0 von GET_CHANGER_PARAMETERS angegeben), muss der Miniklassentreiber PrimaryVolumeID auf den Barcode des Mediums festlegen. Wenn der Changer keinen Barcodeleser unterstützt, sollte der Miniklassentreiber PrimaryVolumeID mithilfe der ChangerQueryVolumeTags-Routine mit einer ASSERT_PRIMARY- oder REPLACE_PRIMARY aktion auf den Wert festlegen, der zuvor dem Medium zugewiesen wurde. Dieser Member ist nur gültig, wenn ELEMENT_STATUS_PVOLTAG auch in Flags festgelegt ist. Wenn der Volumebezeichner fehlt oder nicht lesbar ist, sollte der Miniklassentreiber dieses Flag löschen und den entsprechenden Fehler status festlegen. Dieser Bezeichner darf nicht größer als MAX_VOLUME_ID_SIZE Bytes sein.

AlternateVolumeID[MAX_VOLUME_ID_SIZE]

Gibt die alternative Volumeidentifikation für die Medien an. Dieser Member ist nur für zweiseitige Medien gültig und bezieht sich auf die ID der invertierten Seite. Es stellt niemals einen Barcode dar. Der Miniklassentreiber muss AlternateVolumeID mithilfe der ChangerQueryVolumeTags-Routine mit einer ASSERT_ALTERNATE- oder REPLACE_ALTERNATE aktion auf den Wert festlegen, der zuvor den Medien zugewiesen wurde. Der Bezeichner darf nicht größer als MAX_VOLUME_ID_SIZE Bytes sein und ist nur gültig, wenn ELEMENT_STATUS_AVOLTAG auch in Flags festgelegt ist.

VendorIdentification[VENDOR_ID_LENGTH]

Enthält die Anbieter-ID. Dieser Bezeichner darf nicht größer als VENDOR_ID_LENGTH Bytes sein.

ProductIdentification[PRODUCT_ID_LENGTH]

Enthält die Produkt-ID. Dieser Bezeichner darf nicht größer als PRODUCT_ID_LENGTH Bytes sein.

SerialNumber[SERIAL_NUMBER_LENGTH]

Enthält die Seriennummer. Dieser Bezeichner darf nicht größer als SERIAL_NUMBER_LENGTH Bytes sein.

Hinweise

Die ChangerGetElementStatus-Routine gibt status Informationen in dieser Struktur zurück, wenn Informationen zu Lieferanten-, Produkt- oder Seriennummern erforderlich sind. Andernfalls gibt ChangerGetElementStatus status Informationen in der CHANGER_ELEMENT_STATUS-Struktur zurück.

Anforderungen

Anforderung Wert
Header ntddchgr.h

Weitere Informationen

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS

ChangerGetElementStatus

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_ELEMENT_STATUS