Partager via


structure CHANGER_ELEMENT_STATUS_EX (ntddchgr.h)

La routine ChangerGetElementStatus retourne status informations 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 dans cet élément a été déplacé récemment. Ce membre n’est valide que si ELEMENT_STATUS_SVALID est également défini dans Indicateurs. Cette valeur doit être un décalage de base zéro par rapport à la valeur unique de l’appareil.

Flags

Indique la status 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 Element est ChangerDrive, ChangerSlot ou 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 y a été placé par un opérateur. Cet indicateur est valide uniquement si ElementType dans le membre Element 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 changeur peut accéder à la partie du média dans cet élément. Le pilote de miniclasse 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 défectueux ou a été supprimé. Si ElementType est ChangerIEPort, l’IEport est étendu.

ELEMENT_STATUS_EXENAB

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

ELEMENT_STATUS_INENAB

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

ELEMENT_STATUS_LUN_VALID

Le numéro d’appareil dans le membre Lun est valide. Cet indicateur est valide uniquement si ElementType dans le membre Element est ChangerDrive.

ELEMENT_STATUS_ID_VALID

L’ID cible SCSI dans le membre TargetID est valide. Cet indicateur est valide uniquement si ElementType dans le membre Element 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

Le numéro de série du membre SerialNumber est valide.

ELEMENT_STATUS_INVERT

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

ELEMENT_STATUS_SVALID

Le membre SourceElement et l’indicateur ELEMENT_STATUS_INVERT sont tous deux valides.

ELEMENT_STATUS_PVOLTAG

Les informations de volume principal dans le membre PrimaryVolumeID sont valides.

ELEMENT_STATUS_AVOLTAG

Les informations de volume de remplacement dans le membre AlternateVolumeID sont valides.

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 l’élément multimédia de cet élément, car le média est manquant, endommagé, mal positionné ou à l’envers.

ERROR_LABEL_QUESTIONABLE

L’étiquette peut être non valide en raison d’une condition d’attention unitaire.

ERROR_SLOT_NOT_PRESENT

L’emplacement à cette adresse d’élément n’est actuellement pas installé dans le changeur. Un pilote de miniclasse définit ce code pour chaque emplacement dans un chargeur 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 de miniclasse définit ERROR_DRIVE_NOT_INSTALLED pour le lecteur.

ERROR_TRAY_MALFUNCTION

Le lecteur à cette adresse d’élément a une barre d’état qui doit être étendue pour charger ou supprimer le support, et la barre d’état ne s’étend pas comme nécessaire.

ERROR_UNHANDLED_ERROR

Condition d’erreur inconnue.

TargetId

Spécifie l’ID cible SCSI du lecteur à l’adresse de cet élément pour un changeur SCSI. Ce membre n’est valide que si ElementType dans le membre Element 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 un usage futur. La valeur de ce membre doit être égale à zéro.

PrimaryVolumeID[MAX_VOLUME_ID_SIZE]

Spécifie l’identificateur de volume principal pour le média. Si le changeur prend en charge un lecteur de code à barres et que le lecteur est installé (comme indiqué par CHANGER_BAR_CODE_SCANNER_INSTALLED dans Fonctionnalités0 de GET_CHANGER_PARAMETERS), le pilote de miniclasse 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 de la miniclasse doit définir PrimaryVolumeID sur la valeur précédemment attribuée au média à l’aide de la routine ChangerQueryVolumeTags avec une action ASSERT_PRIMARY ou REPLACE_PRIMARY. Ce membre n’est valide que si ELEMENT_STATUS_PVOLTAG est également défini dans Indicateurs. Si l’identificateur de volume est manquant ou illisible, le pilote de miniclasse doit effacer cet indicateur et définir le status 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 média. Ce membre est valide uniquement pour le support double face et se rapporte à l’ID du côté inversé. Il ne représente jamais un code-barres. Le pilote de miniclasse doit définir AlternateVolumeID sur la valeur précédemment attribué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 dépasser PRODUCT_ID_LENGTH octets.

SerialNumber[SERIAL_NUMBER_LENGTH]

Contient le numéro de série. Cet identificateur ne doit pas dépasser SERIAL_NUMBER_LENGTH octets.

Remarques

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

Configuration requise

Condition requise Valeur
En-tête ntddchgr.h

Voir aussi

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS

ChangerGetElementStatus

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_ELEMENT_STATUS