GET_CHANGER_PARAMETERS structure (winioctl.h)
Représente les paramètres d’un changeur.
Syntaxe
typedef struct _GET_CHANGER_PARAMETERS {
DWORD Size;
WORD NumberTransportElements;
WORD NumberStorageElements;
WORD NumberCleanerSlots;
WORD NumberIEElements;
WORD NumberDataTransferElements;
WORD NumberOfDoors;
WORD FirstSlotNumber;
WORD FirstDriveNumber;
WORD FirstTransportNumber;
WORD FirstIEPortNumber;
WORD FirstCleanerSlotAddress;
WORD MagazineSize;
DWORD DriveCleanTimeout;
DWORD Features0;
DWORD Features1;
BYTE MoveFromTransport;
BYTE MoveFromSlot;
BYTE MoveFromIePort;
BYTE MoveFromDrive;
BYTE ExchangeFromTransport;
BYTE ExchangeFromSlot;
BYTE ExchangeFromIePort;
BYTE ExchangeFromDrive;
BYTE LockUnlockCapabilities;
BYTE PositionCapabilities;
BYTE Reserved1[2];
DWORD Reserved2[2];
} GET_CHANGER_PARAMETERS, *PGET_CHANGER_PARAMETERS;
Membres
Size
Taille de cette structure, en octets. L’appelant doit définir ce membre sur sizeof(GET_CHANGER_PARAMETERS)
.
NumberTransportElements
Nombre d’éléments de transport dans le changeur. Pour un changeur SCSI, cela est défini dans la page d’adresse de l’élément. Cette valeur est presque toujours égale à 1, car la plupart des changeurs ont un seul élément de transport avec un ou deux mécanismes de sélecteur. Un changeur qui a deux mécanismes de sélecteur sur son transport ne doit pas être représenté comme ayant deux transports, car les sélecteurs ne sont pas adressables individuellement. Les bibliothèques multimédias haut de gamme peuvent avoir des éléments de transport doubles et multiples pour la tolérance de panne.
NumberStorageElements
Nombre d’éléments de stockage (emplacements) dans le changeur. Pour un changeur SCSI, cela est défini dans la page d’adresse de l’élément. Cette valeur représente le nombre maximal d’emplacements disponibles pour ce changeur, y compris ceux des magazines amovibles, que les magazines soient installés ou non. Si NumberCleanerSlots a la valeur 1, NumberStorageElements est inférieur de 1 au nombre maximal d’emplacements dans le changeur.
NumberCleanerSlots
Nombre d’éléments de stockage (emplacements) pour les cartouches plus propres dans le changeur. Si NumberCleanerSlots a la valeur 1, FirstCleanerSlotAddress indique l’adresse de base zéro de l’emplacement dans lequel un nettoyeur de lecteur doit être inséré. Si le changeur ne prend pas en charge le nettoyage du lecteur en déplaçant par programmation la cartouche de nettoyage de son emplacement vers un lecteur, NumberCleanerSlots a la valeur 0. NumberCleanerSlots ne peut pas être supérieur à 1.
NumberIEElements
Nombre d’éléments d’importation/exportation (ports d’insertion/éjection) dont dispose le changeur pour l’insertion et l’éjection de média. Pour un changeur SCSI, cela est défini dans la page d’adresse de l’élément. Un élément d’importation/exportation ne doit pas faire partie de l’espace d’élément de stockage (emplacement) et il doit être possible de transporter un média entre l’élément import/export et un emplacement à l’aide d’une commande MOVE MEDIUM. Si le changeur a une porte et non un élément d’importation/exportation vrai, NumberIEElements est 0.
NumberDataTransferElements
Nombre d’éléments de transfert de données (lecteurs) dans le changeur. Pour un changeur SCSI, cela est défini dans la page d’adresse de l’élément. Contrairement à NumberStorageElements, qui indique le nombre total d’emplacements possibles si les emplacements sont réellement présents ou non, NumberDataTransferElements indique le nombre de lecteurs réellement présents dans le changeur.
NumberOfDoors
Nombre de portes dans le changeur. Une porte permet d’accéder à tous les supports du changeur à la fois, contrairement à un port d’insertion/éjection, qui permet d’accéder à un ou plusieurs supports, mais pas à la totalité. La porte d’un changeur peut être une porte d’entrée physique ou un seul magazine qui contient tous les médias. Si un changeur prend uniquement en charge un port d’insertion/d’éjection pour l’insertion et l’éjection d’un média, NumberOfDoors est 0.
FirstSlotNumber
Numéro utilisé par le fournisseur du changeur pour identifier le premier élément de stockage (emplacement) dans le changeur à l’utilisateur final, soit en marquant un magazine, soit en définissant un schéma de numérotation d’emplacement dans le guide des opérateurs du changeur. FirstSlotNumber est généralement 0 ou 1, mais il peut s’agir de la première adresse dans une plage consécutive d’adresses d’emplacements définie par le fournisseur.
FirstDriveNumber
Numéro utilisé par le fournisseur du changeur pour identifier le premier élément de transfert de données (lecteur) dans le changeur à l’utilisateur final. FirstDriveNumber est généralement 0 ou 1, mais il peut s’agir de la première adresse dans une plage consécutive d’adresses de lecteur définie par le fournisseur.
FirstTransportNumber
Numéro utilisé par le fournisseur du changeur pour identifier le premier (et généralement le seul) élément de transport dans le changeur vers l’utilisateur final. FirstTransportNumber est généralement 0 ou 1, mais il peut s’agir de la première adresse dans une plage consécutive d’adresses de transport définies par le fournisseur.
FirstIEPortNumber
Numéro utilisé par le fournisseur du changeur pour identifier le premier (et généralement le seul) port d’insertion/d’éjection dans le changeur vers l’utilisateur final. FirstIEPortNumber est généralement 0 ou 1, mais il peut s’agir de la première adresse dans une plage consécutive d’adresses de port d’insertion/d’éjection définies par le fournisseur. Si NumberIEElements a la valeur 0, FirstIEPortNumber doit également être 0.
FirstCleanerSlotAddress
Numéro utilisé par le fournisseur du changeur pour identifier la première (et la seule) adresse d’emplacement affectée à une cartouche de nettoyage de lecteur à l’utilisateur final. Il doit s’agir de la valeur définie par le fournisseur dans le guide des opérateurs du changeur. Par exemple, si un changeur a 8 emplacements numérotés de 1 à 8 et que son repère d’opérateur désigne l’emplacement 8 comme emplacement de nettoyage de lecteur, FirstSlotNumber est 1 et FirstCleanerSlotAddress est 8. Si les 8 mêmes emplacements étaient numérotés de 0 à 7, FirstSlotNumber serait 0 et FirstCleanerSlotAddress serait 7. Si NumberCleanerSlots a la valeur 0, FirstCleanerSlotAddress doit être 0.
MagazineSize
Nombre d’emplacements dans les magazines amovibles du changeur. Ce membre est valide uniquement si CHANGER_CARTRIDGE_MAGAZINE est défini dans Features0.
DriveCleanTimeout
Deux fois le nombre maximal de secondes qu’un nettoyage est censé prendre. Les lecteurs du changeur doivent être nettoyés par sa cartouche de nettoyage dans la moitié du temps spécifié par DriveCleanTimeout. Par exemple, si un lecteur est généralement nettoyé en 300 secondes (5 minutes), DriveCleanTimeout doit être défini sur 600.
Features0
Fonctionnalités prises en charge par le changeur. Ce membre peut être une ou plusieurs des valeurs suivantes.
Valeur | Signification |
---|---|
|
Le changeur prend en charge un lecteur de code-barres et le lecteur est installé. |
|
Le changeur utilise des chargeurs de cartouche amovibles pour tout ou partie des emplacements de stockage. |
|
L’indicateur ELEMENT_STATUS_ACCESS dans une structure de CHANGER_ELEMENT_STATUS d’un élément de transport de données n’est pas valide lorsque l’élément de transport contient une cartouche de nettoyage. |
|
Le changeur a un emplacement désigné pour une cartouche plus propre. Si cet indicateur est défini, NumberCleanerSlots doit avoir la valeur 1 et FirstCleanerSlotAddress doit spécifier l’adresse de l’emplacement de nettoyage. |
|
Le changeur a un port d’insertion/d’éjection et peut retirer le port d’insertion/éjection par programmation. |
|
Le changeur peut recalibrer son élément de transport en réponse à une commande explicite. |
|
Les lecteurs du changeur nécessitent un nettoyage périodique, qui doit être initié par l’utilisateur ou une application, et le changeur peut utiliser son élément de transport pour monter une cartouche plus propre dans un lecteur. |
|
Le changeur nécessite que tous les lecteurs soient vides (démontés) avant qu’ils soient accessibles par sa porte. |
|
Le changeur peut échanger des médias entre des éléments. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande EXCHANGE MEDIUM. |
|
Le changeur peut initialiser des éléments dans une plage spécifiée. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande INITIALIZE ELEMENT STATUS WITH RANGE. |
|
Le pavé tactile du changeur peut être activé et désactivé par programmation. |
|
La porte du changeur, le port d’insertion/éjection ou le clavier peuvent être verrouillés ou déverrouillés par programme. Si cet indicateur est défini, LockUnlockCapabilities indique quels éléments peuvent être verrouillés ou déverrouillés. |
|
L’élément de transport du changeur prend en charge le média de retournement (rotation). Pour un changeur SCSI, cet indicateur reflète le bit de rotation dans la page des paramètres de la géométrie de transport. |
|
Le changeur dispose d’un port d’insertion/d’éjection et peut étendre le port d’insertion/éjection par programmation. |
|
Le changeur peut positionner le transport vers une destination particulière. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande POSITION TO ELEMENT. Si cet indicateur est défini, PositionCapabilities indique les éléments sur lesquels le transport peut être positionné. |
|
Le changeur nécessite une commande explicite émise via un pilote de stockage de masse (bande, disque ou CDROM, par exemple) pour éjecter le média d’un lecteur avant que le changeur ne puisse déplacer le média d’un lecteur vers un emplacement. |
|
Le changeur nécessite une commande explicite émise via un pilote de stockage de masse pour éjecter un mécanisme de lecteur avant que le changeur puisse déplacer le média d’un emplacement vers le lecteur. Par exemple, un changeur avec des lecteurs de CD-ROM peut exiger que le plateau soit présenté au transport robotisé afin qu’un support puisse être chargé sur le plateau pendant une opération de montage. |
|
Le changeur peut indiquer si le média est présent dans le port d’insertion/d’éjection. Un tel changeur doit avoir un capteur dans le port d’insertion/d’éjection pour détecter la présence ou l’absence de média. |
|
Le numéro de série est valide et unique pour tous les changeurs de ce type. Il n’est pas garanti que les numéros de série soient uniques entre les fournisseurs et les lignes de produits. |
|
Le changeur utilise la mémoire non volatile pour les informations de status d’élément. |
|
Le changeur peut utiliser un lecteur comme élément de stockage indépendant ; autrement dit, il peut stocker des médias dans le lecteur sans le lire. Pour un changeur SCSI, cet indicateur reflète l’état du bit DT dans la page des fonctionnalités de l’appareil. |
|
Le changeur peut utiliser un port d’insertion/éjection comme élément de stockage indépendant. Pour un changeur SCSI, cet indicateur reflète l’état du bit E/E dans la page des fonctionnalités de l’appareil. |
|
Le changeur peut utiliser un emplacement comme élément de stockage indépendant pour le média. Pour un changeur SCSI, cet indicateur reflète l’état du bit ST dans la page des fonctionnalités de l’appareil. Les emplacements étant l’emplacement de stockage normal pour les médias, le changeur doit prendre en charge cette fonctionnalité. |
|
Le changeur peut utiliser un transport comme élément de stockage indépendant. Pour un changeur SCSI, cet indicateur reflète l’état du bit MT dans la page des fonctionnalités de l’appareil. |
|
Le changeur peut vérifier les informations de volume. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande SEND VOLUME TAG avec un code d’action d’envoi de ASSERT. |
|
Le changeur prend en charge l’identification du volume. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge les commandes SEND VOLUME TAG et REQUEST VOLUME ELEMENT ADDRESS. |
|
Le changeur peut remplacer les informations de volume. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande SEND VOLUME TAG avec un code d’action d’envoi de REPLACE. |
|
Le changeur peut rechercher des informations de volume. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande SEND VOLUME TAG avec un code d’action d’envoi de TRANSLATE. |
|
Le changeur peut effacer les informations de volume existantes. Pour un changeur SCSI, cet indicateur indique si le changeur prend en charge la commande SEND VOLUME TAG avec un code d’action d’envoi d’UNDEFINE. |
Features1
Toutes les fonctionnalités supplémentaires prises en charge par le changeur. Ce membre peut être une ou plusieurs des valeurs suivantes.
MoveFromTransport
Indique si le changeur prend en charge le déplacement d’un élément multimédia d’un élément de transport vers un autre élément de transport, un emplacement de stockage, un port d’insertion/éjection ou un lecteur. Pour un changeur SCSI, cela est défini dans la page des fonctionnalités de l’appareil. Le transport n’est généralement pas la source ou la destination pour le déplacement ou l’échange de médias.
Pour déterminer si le changeur peut déplacer un média vers un élément donné, utilisez les valeurs suivantes.
MoveFromSlot
Indique si le changeur prend en charge le déplacement d’un emplacement de stockage vers un élément de transport, un autre emplacement de stockage, un port d’insertion/éjection ou un lecteur. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge le déplacement.
MoveFromIePort
Indique si le changeur prend en charge le déplacement d’un port d’insertion/d’éjection vers un élément de transport, un emplacement de stockage, un autre port d’insertion/éjection ou un lecteur. Pour un changeur SCSI, cela est défini dans la page des fonctionnalités de l’appareil. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge le déplacement.
MoveFromDrive
Indique si le changeur prend en charge le déplacement d’un support d’un lecteur vers un élément de transport, un emplacement de stockage, un port d’insertion/éjection ou un autre lecteur. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge le déplacement.
ExchangeFromTransport
Indique si le changeur prend en charge l’échange de support entre un élément de transport et un autre élément de transport, un emplacement de stockage, un port d’insertion/éjection ou un lecteur. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge l’échange.
ExchangeFromSlot
Indique si le changeur prend en charge l’échange de support entre un emplacement de stockage et un élément de transport, un autre emplacement de stockage, un port d’insertion/éjection ou un lecteur. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge l’échange.
ExchangeFromIePort
Indique si le changeur prend en charge l’échange de support entre un port d’insertion/éjection et un élément de transport, un emplacement de stockage, un autre port d’insertion/éjection ou un lecteur. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge l’échange.
ExchangeFromDrive
Indique si le changeur prend en charge l’échange de support entre un lecteur et un élément de transport, un emplacement de stockage, un port d’insertion/éjection ou un autre lecteur. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge l’échange.
LockUnlockCapabilities
Éléments d’un changeur qui peuvent être verrouillés ou déverrouillés par programmation. Ce membre est valide uniquement si CHANGER_LOCK_UNLOCK est défini dans Features0.
Pour déterminer si le changeur peut verrouiller ou déverrouiller un élément particulier, utilisez une ou plusieurs des valeurs suivantes.
PositionCapabilities
Éléments sur lesquels un changeur peut positionner son transport. Utilisez les indicateurs décrits sous MoveFromTransport pour déterminer si le changeur prend en charge le positionnement du transport sur un élément particulier. Ce membre n’est valide que si CHANGER_POSITION_TO_ELEMENT est défini dans Features0.
Reserved1[2]
Réservé à un usage ultérieur.
Reserved2[2]
Réservé pour un usage futur.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP |
Serveur minimal pris en charge | Windows Server 2003 |
En-tête | winioctl.h (inclure Windows.h) |