CHANGER_ELEMENT_STATUS Struktur (ntddchgr.h)
Die ChangerGetElementStatus Routine gibt Statusinformationen in dieser Struktur zurück.
Syntax
typedef struct _CHANGER_ELEMENT_STATUS {
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];
} CHANGER_ELEMENT_STATUS, *PCHANGER_ELEMENT_STATUS;
Angehörige
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 befindet, zuletzt verschoben wurden. Dieses Element ist nur gültig, wenn ELEMENT_STATUS_SVALID auch in Flagsfestgelegt ist. Dieser Wert muss ein nullbasierter Offset aus dem gerätespezifischen Wert sein.
Flags
Gibt den Status des Elements an, bei dem 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 element Element Member ChangerDrive, ChangerSlotoder ChangerTransportist. Wenn ElementType-ChangerIEPort-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 Member ChangerIEPortist.
ELEMENT_STATUS_EXCEPT
Das Element befindet sich in einem abnormen Zustand. Weitere Informationen finden Sie im ExceptionCode Member.
ELEMENT_STATUS_ACCESS
Das Transportelement des Changers kann auf die Medienelemente in diesem Element zugreifen. Der Miniklassentreiber löscht dieses Kennzeichen, um anzugeben, dass die Medien aus einem der folgenden Gründe nicht zugänglich sind: Wenn ElementType im element Element Member ChangerSlotist, ist der Steckplatz nicht im Änderungsmodul vorhanden (z. B. das Magazin mit dem Steckplatz wurde physisch entfernt). Wenn ElementType-ChangerDrive-ist, wird das Laufwerk beschädigt oder entfernt. Wenn ElementTypeChangerIEPortist, 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 Mitglied ist gültig. Dieses Flag ist nur gültig, wenn ElementType- im element Element Member ChangerDrive-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 Element Member ChangerDrive-ist.
ELEMENT_STATUS_NOT_BUS
Das Laufwerk an der Adresse, die durch Lun angegeben wird, und TargetID- sich auf einem anderen SCSI-Bus befindet als der Changer selbst.
ELEMENT_STATUS_INVERT
Die Medien im Element wurden gekippt. Dieses Kennzeichen ist nur gültig, wenn auch das ELEMENT_STATUS_SVALID Flag festgelegt ist.
ELEMENT_STATUS_SVALID
Das SourceElement Member und ELEMENT_STATUS_INVERT Flag sind beide gültig.
ELEMENT_STATUS_PVOLTAG
Primäre Volumeinformationen in der PrimaryVolumeID Member sind gültig.
ELEMENT_STATUS_AVOLTAG
Alternative Volumeinformationen im AlternateVolumeID Member sind gültig.
ExceptionCode
Gibt an, dass sich das Element in einem abnormen Zustand befindet. Dieses Element ist nur gültig, wenn ELEMENT_STATUS_EXCEPT in Flagsfestgelegt ist. ExceptionCode- kann auf einen der folgenden Werte festgelegt werden.
ERROR_LABEL_UNREADABLE
Der Balkencodeleser des Changers konnte die Barcodebeschriftung auf dem Medienteil in diesem Element nicht lesen, da die Medien fehlen, beschädigt, unsachgemäß positioniert oder auf dem Kopf stehen.
ERROR_LABEL_QUESTIONABLE
Die Beschriftung kann aufgrund einer Bedingung für die Aufmerksamkeit der Einheit ungültig sein.
ERROR_SLOT_NOT_PRESENT
Der Steckplatz 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 Änderungsregler weiterhin ohne Laufwerk ausgeführt 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 eine Taskleiste, die erweitert werden muss, um Medien zu laden oder zu entfernen, und die Taskleiste 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. Dieses Element ist nur gültig, wenn ElementType im element Element Member ChangerDrive- ist und ELEMENT_STATUS_ID_VALID in Flagsfestgelegt ist.
Lun
Gibt die SCSI-Gerätenummer des Laufwerks an dieser Elementadresse an. Dieses Element ist nur gültig, wenn ElementType- im Element Member ChangerDrive- ist und ELEMENT_STATUS_LUN_VALID in Flagsfestgelegt ist.
Reserved
Reserviert für die zukünftige Verwendung. Der Wert dieses Elements muss null sein.
PrimaryVolumeID[MAX_VOLUME_ID_SIZE]
Gibt den primären Volumebezeichner 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 Balkencodeleser unterstützt, sollte der Miniklassentreiber PrimaryVolumeID- auf den Wert festlegen, der zuvor den Medien zugewiesen wurde, indem die ChangerQueryVolumeTags-Routine mit einer ASSERT_PRIMARY oder REPLACE_PRIMARY Aktion verwendet wird. Dieses Element ist nur gültig, wenn ELEMENT_STATUS_PVOLTAG auch in Flagsfestgelegt ist. Wenn der Volumebezeichner fehlt oder nicht lesbar ist, sollte der Miniklassentreiber dieses Kennzeichen löschen und den entsprechenden Fehlerstatus 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. Dieses Element ist nur für zweiseitige Medien gültig und bezieht sich auf die ID der invertierten Seite. Er stellt niemals einen Barcode dar. Der Miniklassentreiber muss AlternateVolumeID- auf den Wert festlegen, der zuvor den Medien zugewiesen wurde, mithilfe der ChangerQueryVolumeTags Routine mit einer ASSERT_ALTERNATE- oder REPLACE_ALTERNATE-Aktion. Der Bezeichner darf nicht größer als MAX_VOLUME_ID_SIZE Bytes sein und ist nur gültig, wenn ELEMENT_STATUS_AVOLTAG auch in Flagsfestgelegt ist.
Bemerkungen
Bei den meisten Elementtypen verwenden Changer-Miniklassentreiber CHANGER_ELEMENT_STATUS, um den Status der angegebenen Elemente dem Änderungsklassentreiber zu melden. Einige Elemente vom Typ ChangerDrivegeben jedoch Produktinformationsdaten zurück. Wenn das Gerät Produktinformationen bereitstellt, meldet der Miniklassentreiber die Elementstatusdaten in einer Struktur vom Typ CHANGER_ELEMENT_STATUS_EX anstelle von CHANGER_ELEMENT_STATUS zu verwenden. Der Miniklassentreiber gibt an, dass Produktinformationen vorhanden sind, indem ELEMENT_STATUS_PRODUCT_DATA im Flags Element der Struktur festgelegt wird.
Anforderungen
Anforderung | Wert |
---|---|
Header- | ntddchgr.h |