Partager via


structure CHANGER_ELEMENT_STATUS_EX (ntddchgr.h)

La routine ChangerGetElementStatus retourne des informations d’état dans cette structure.

Syntaxe

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;

Membres

Element

Spécifie l’élément de type CHANGER_ELEMENT auquel cette structure fait référence.

SrcElementAddress

Spécifie l’élément de type CHANGER_ELEMENT à partir duquel le média actuellement présent dans cet élément a été déplacé le plus récemment. Ce membre est valide uniquement si ELEMENT_STATUS_SVALID est également défini dans indicateurs. Cette valeur doit être un décalage de base zéro de la valeur unique de l’appareil.

Flags

Indique l’état de l’élément, qui peut être une ou plusieurs des valeurs suivantes.

ELEMENT_STATUS_FULL

L’élément contient un élément multimédia. Cet indicateur est valide si ElementType dans le membre Élément est ChangerDrive, ChangerSlotou ChangerTransport. Si ElementType est ChangerIEPort, cet indicateur n’est valide que si CHANGER_REPORT_IEPORT_STATE est également défini dans Features0 de GET_CHANGER_PARAMETERS.

ELEMENT_STATUS_IMPEXP

Le média de cet élément a été placé par un opérateur. Cet indicateur est valide uniquement si ElementType dans le membre Élément est ChangerIEPort.

ELEMENT_STATUS_EXCEPT

L’élément est dans un état anormal. Pour plus d’informations, consultez le membre ExceptionCode.

ELEMENT_STATUS_ACCESS

L’élément de transport du change peut accéder à l’élément multimédia de cet élément. Le pilote miniclass efface cet indicateur pour indiquer que le média n’est pas accessible pour l’une des raisons suivantes : si ElementType dans le membre Element est ChangerSlot, l’emplacement n’est pas présent dans le changeur (par exemple, le magazine contenant l’emplacement a été physiquement supprimé). Si ElementType est ChangerDrive, le lecteur est endommagé ou a été supprimé. Si ElementType est ChangerIEPort, iEport est étendu.

ELEMENT_STATUS_EXENAB

L’élément prend en charge l’exportation de supports via l’IEport du changeur.

ELEMENT_STATUS_INENAB

L’élément prend en charge l’importation de supports via l’IEport du changeur.

ELEMENT_STATUS_LUN_VALID

Le numéro d’appareil du membre Lun est valide. Cet indicateur n’est valide que si ElementType dans le membre élément est ChangerDrive.

ELEMENT_STATUS_ID_VALID

L’ID cible SCSI dans le membre TargetID est valide. Cet indicateur n’est valide que si ElementType dans le membre élément est ChangerDrive.

ELEMENT_STATUS_NOT_BUS

Le lecteur à l’adresse indiquée par Lun et TargetID se trouve sur un bus SCSI différent de celui du changeur lui-même.

ELEMENT_STATUS_PRODUCT_DATA

Numéro de série dans le membre SerialNumber valide.

ELEMENT_STATUS_INVERT

Le média de l’élément a été retourné. Cet indicateur est valide uniquement si l’indicateur ELEMENT_STATUS_SVALID est également défini.

ELEMENT_STATUS_SVALID

L’indicateur SourceElement et ELEMENT_STATUS_INVERT sont tous deux valides.

ELEMENT_STATUS_PVOLTAG

Les informations de volume principal du membre PrimaryVolumeID sont valides.

ELEMENT_STATUS_AVOLTAG

D’autres informations de volume dans le membre AlternateVolumeID est valide.

ExceptionCode

Indique que l’élément est dans un état anormal. Ce membre n’est valide que si ELEMENT_STATUS_EXCEPT est défini dans indicateurs. ExceptionCode peut être défini sur l’une des valeurs suivantes.

ERROR_LABEL_UNREADABLE

Le lecteur de code à barres du changeur n’a pas pu lire l’étiquette de code à barres sur le morceau de média de cet élément, car le média est manquant, endommagé, mal positionné ou à l’envers.

ERROR_LABEL_QUESTIONABLE

L’étiquette peut ne pas être valide en raison d’une condition d’attention d’unité.

ERROR_SLOT_NOT_PRESENT

L’emplacement à cette adresse d’élément n’est actuellement pas installé dans le changeur. Un pilote miniclass définit ce code pour chaque emplacement d’un magazine amovible pour indiquer que le magazine a été supprimé.

ERROR_DRIVE_NOT_INSTALLED

Le lecteur à cette adresse d’élément est absent. Si un changeur peut continuer à fonctionner sans le lecteur, son pilote miniclass définit ERROR_DRIVE_NOT_INSTALLED pour le lecteur.

ERROR_TRAY_MALFUNCTION

Le lecteur à cette adresse d’élément a un plateau qui doit être étendu pour charger ou supprimer le support, et le plateau n’est pas étendu si nécessaire.

ERROR_UNHANDLED_ERROR

Condition d’erreur inconnue.

TargetId

Spécifie l’ID cible SCSI du lecteur à cette adresse d’élément pour un changeur SCSI. Ce membre n’est valide que si ElementType dans le membre Élément est ChangerDrive et ELEMENT_STATUS_ID_VALID est défini dans Indicateurs.

Lun

Spécifie le numéro de périphérique SCSI du lecteur à l’adresse de cet élément. Ce membre n’est valide que si ElementType dans le membre élément est changerDrive et ELEMENT_STATUS_LUN_VALID est défini dans indicateurs.

Reserved

Réservé pour une utilisation ultérieure. La valeur de ce membre doit être égale à zéro.

PrimaryVolumeID[MAX_VOLUME_ID_SIZE]

Spécifie l’identificateur de volume principal du média. Si le changeur prend en charge un lecteur de code barre et que le lecteur est installé (comme indiqué par CHANGER_BAR_CODE_SCANNER_INSTALLED dans Features0 de GET_CHANGER_PARAMETERS), le pilote miniclass doit définir PrimaryVolumeID sur le code à barres du média. Si le changeur ne prend pas en charge un lecteur de code à barres, le pilote miniclass doit définir PrimaryVolumeID sur la valeur précédemment affectée au support à l’aide du ChangerQueryVolumeTags routine avec une action ASSERT_PRIMARY ou REPLACE_PRIMARY. Ce membre est valide uniquement si ELEMENT_STATUS_PVOLTAG est également défini dans Indicateurs. Si l’identificateur de volume est manquant ou non lisible, le pilote miniclass doit effacer cet indicateur et définir l’état d’erreur approprié. Cet identificateur ne doit pas être supérieur à MAX_VOLUME_ID_SIZE octets.

AlternateVolumeID[MAX_VOLUME_ID_SIZE]

Spécifie une autre identification du volume pour le support. Ce membre est valide uniquement pour les supports à deux côtés et se rapporte à l’ID du côté inversé. Il ne représente jamais de code à barres. Le pilote miniclasse doit définir AlternateVolumeID sur la valeur précédemment affectée au média à l’aide de la routine ChangerQueryVolumeTags avec une action ASSERT_ALTERNATE ou REPLACE_ALTERNATE. L’identificateur ne doit pas être supérieur à MAX_VOLUME_ID_SIZE octets et n’est valide que si ELEMENT_STATUS_AVOLTAG est également défini dans indicateurs.

VendorIdentification[VENDOR_ID_LENGTH]

Contient l’ID du fournisseur. Cet identificateur ne doit pas être supérieur à VENDOR_ID_LENGTH octets.

ProductIdentification[PRODUCT_ID_LENGTH]

Contient l’ID de produit. Cet identificateur ne doit pas être supérieur à PRODUCT_ID_LENGTH octets.

SerialNumber[SERIAL_NUMBER_LENGTH]

Contient le numéro de série. Cet identificateur ne doit pas être supérieur à SERIAL_NUMBER_LENGTH octets.

Remarques

La routine ChangerGetElementStatus retourne les informations d’état dans cette structure si des informations sur le fournisseur, le produit ou le numéro de série sont nécessaires. Sinon, ChangerGetElementStatus retourne des informations d’état dans la structure CHANGER_ELEMENT_STATUS.

Exigences

Exigence Valeur
d’en-tête ntddchgr.h

Voir aussi

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS

ChangerGetElementStatus

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_ELEMENT_STATUS