estrutura GET_CHANGER_PARAMETERS (winioctl.h)
Representa os parâmetros de um alterador.
Sintaxe
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;
Membros
Size
O tamanho dessa estrutura, em bytes. O chamador deve definir esse membro como sizeof(GET_CHANGER_PARAMETERS)
.
NumberTransportElements
O número de elementos de transporte no alterador. Para um alterador SCSI, isso é definido na página de endereço do elemento. Esse valor é quase sempre 1, porque a maioria dos alteradores tem um único elemento de transporte com um ou dois mecanismos de seletor. Um alterador que tem dois mecanismos de seletor em seu transporte não deve ser representado como tendo dois transportes, pois os seletores não são individualmente endereçáveis. Bibliotecas de mídia high-end podem ter elementos de transporte duplos e múltiplos para tolerância a falhas.
NumberStorageElements
O número de elementos de armazenamento (slots) no alterador. Para um alterador SCSI, isso é definido na página de endereço do elemento. Esse valor representa o número máximo de slots disponíveis para esse alterador, incluindo aqueles em revistas removíveis, independentemente de as revistas estarem instaladas ou não. Se NumberCleanerSlots for 1, NumberStorageElements será 1 menor que o número máximo de slots no alterador.
NumberCleanerSlots
O número de elementos de armazenamento (slots) para cartuchos mais limpos no alterador. Se NumberCleanerSlots for 1, FirstCleanerSlotAddress indicará o endereço baseado em zero do slot no qual um limpador de unidade deve ser inserido. Se o alterador não der suporte à limpeza de unidade movendo programaticamente o cartucho mais limpo de seu slot para uma unidade, NumberCleanerSlots será 0. NumberCleanerSlots não pode ser maior que 1.
NumberIEElements
O número de elementos de importação/exportação (portas de inserção/ejeção) que o alterador tem para inserir e ejetar mídia. Para um alterador SCSI, isso é definido na página de endereço do elemento. Um elemento de importação/exportação não deve fazer parte do espaço do elemento de armazenamento (slot) e deve ser possível transportar mídia entre o elemento de importação/exportação e um slot usando um comando MOVE MEDIUM. Se o alterador tiver uma porta e não um elemento de importação/exportação verdadeiro, NumberIEElements será 0.
NumberDataTransferElements
O número de elementos de transferência de dados (unidades) no alterador. Para um alterador SCSI, isso é definido na página de endereço do elemento. Ao contrário de NumberStorageElements, que indica o número total de slots possíveis se os slots estão realmente presentes, NumberDataTransferElements indica o número de unidades que estão realmente presentes no alterador.
NumberOfDoors
O número de portas no trocador. Uma porta fornece acesso a todas as mídias no alterador de uma só vez, ao contrário de uma porta de inserção/ejeção, que fornece acesso a uma ou mais mídias, mas não a todas. A porta de um divisor pode ser uma porta da frente física ou uma única revista que contém toda a mídia. Se um alterador der suporte apenas a uma porta de inserção/ejetação para inserir e ejetar mídia, NumberOfDoors será 0.
FirstSlotNumber
O número usado pelo fornecedor do alterador para identificar o primeiro elemento de armazenamento (slot) no alterador para o usuário final, marcando uma revista ou definindo um esquema de numeração de slot no guia de operadores do alterador. FirstSlotNumber normalmente é 0 ou 1, mas pode ser o primeiro endereço em um intervalo consecutivo de endereços de slot definidos pelo fornecedor.
FirstDriveNumber
O número usado pelo fornecedor do alterador para identificar o primeiro elemento de transferência de dados (unidade) no alterador para o usuário final. FirstDriveNumber normalmente é 0 ou 1, mas pode ser o primeiro endereço em um intervalo consecutivo de endereços de unidade definidos pelo fornecedor.
FirstTransportNumber
O número usado pelo fornecedor do alterador para identificar o primeiro (e geralmente apenas) elemento de transporte no alterador para o usuário final. FirstTransportNumber normalmente é 0 ou 1, mas pode ser o primeiro endereço em um intervalo consecutivo de endereços de transporte definidos pelo fornecedor.
FirstIEPortNumber
O número usado pelo fornecedor do alterador para identificar a primeira (e geralmente apenas) porta de inserção/ejeção no alterador para o usuário final. FirstIEPortNumber normalmente é 0 ou 1, mas pode ser o primeiro endereço em um intervalo consecutivo de endereços de porta de inserção/ejeção definidos pelo fornecedor. Se NumberIEElements for 0, FirstIEPortNumber também deverá ser 0.
FirstCleanerSlotAddress
O número usado pelo fornecedor do alterador para identificar o primeiro (e único) endereço de slot atribuído a um cartucho de limpador de unidade para o usuário final. Esse deve ser o valor definido pelo fornecedor no guia de operadores do alterador. Por exemplo, se um alterador tiver 8 slots numerados de 1 a 8 e o guia do operador designar o slot 8 como o slot de limpeza de unidade, FirstSlotNumber será 1 e FirstCleanerSlotAddress será 8. Se os mesmos 8 slots fossem numerados de 0 a 7, FirstSlotNumber seria 0 e FirstCleanerSlotAddress seria 7. Se NumberCleanerSlots for 0, FirstCleanerSlotAddress deverá ser 0.
MagazineSize
O número de slots nas revistas removíveis no alterador. Esse membro só será válido se CHANGER_CARTRIDGE_MAGAZINE estiver definido em Recursos0.
DriveCleanTimeout
O dobro do número máximo de segundos que uma limpeza deve levar. As unidades do modificador devem ser limpas por seu cartucho mais limpo na metade do tempo especificado por DriveCleanTimeout. Por exemplo, se uma unidade normalmente for limpa em 300 segundos (5 minutos), DriveCleanTimeout deverá ser definido como 600.
Features0
Os recursos compatíveis com o alterador. Esse membro pode ser um ou mais dos valores a seguir.
Valor | Significado |
---|---|
|
O alterador dá suporte a um leitor de código de barras e o leitor está instalado. |
|
O alterador usa revistas de cartucho removíveis para alguns ou todos os slots de armazenamento. |
|
O sinalizador ELEMENT_STATUS_ACCESS em uma estrutura CHANGER_ELEMENT_STATUS para um elemento de transporte de dados é inválido quando o elemento de transporte contém um cartucho de limpeza. |
|
O trocador tem um slot designado para um cartucho mais limpo. Se esse sinalizador for definido, NumberCleanerSlots deverá ser 1 e FirstCleanerSlotAddress deverá especificar o endereço do slot mais limpo. |
|
O alterador tem uma porta de inserção/ejetação e pode retirar a porta de inserção/ejetação programaticamente. |
|
O alterador pode recalibrar seu elemento de transporte em resposta a um comando explícito. |
|
As unidades do alterador exigem limpeza periódica, que deve ser iniciada pelo usuário ou por um aplicativo, e o alterador pode usar seu elemento de transporte para montar um cartucho mais limpo em uma unidade. |
|
O alterador exige que todas as unidades estejam vazias (desmontadas) antes que possam ser acessadas por meio de sua porta. |
|
O alterador pode trocar mídia entre elementos. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando EXCHANGE MEDIUM. |
|
O alterador pode inicializar elementos dentro de um intervalo especificado. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando INITIALIZE ELEMENT STATUS WITH RANGE. |
|
O teclado do alterador pode ser habilitado e desabilitado programaticamente. |
|
A porta do alterador, a porta de inserção/ejeção ou o teclado podem ser bloqueados ou desbloqueados programaticamente. Se esse sinalizador estiver definido, LockUnlockCapabilities indicará quais elementos podem ser bloqueados ou desbloqueados. |
|
O elemento de transporte do alterador dá suporte à mídia de inversão (rotação). Para um alterador SCSI, esse sinalizador reflete o bit de rotação na página de parâmetros de geometria de transporte. |
|
O alterador tem uma porta de inserção/ejeção e pode estender a porta de inserção/ejeção programaticamente. |
|
O alterador pode posicionar o transporte para um destino específico. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando POSITION TO ELEMENT. Se esse sinalizador estiver definido, PositionCapabilities indicará os elementos aos quais o transporte pode ser posicionado. |
|
O alterador requer um comando explícito emitido por meio de um driver de armazenamento em massa (fita, disco ou CDROM, por exemplo) para ejetar a mídia de uma unidade antes que o alterador possa mover a mídia de uma unidade para um slot. |
|
O alterador requer um comando explícito emitido por meio de um driver de armazenamento em massa para ejetar um mecanismo de unidade antes que o alterador possa mover a mídia de um slot para a unidade. Por exemplo, um modificador com unidades CD-ROM pode exigir que a bandeja seja apresentada ao transporte robótico para que um pedaço de mídia possa ser carregado na bandeja durante uma operação de montagem. |
|
O alterador pode relatar se a mídia está presente na porta de inserção/ejeção. Esse alterador deve ter um sensor na porta de inserção/ejeção para detectar a presença ou ausência de mídia. |
|
O número de série é válido e exclusivo para todos os alteradores desse tipo. Não há garantia de que os números de série sejam exclusivos entre as linhas de fornecedor e produto. |
|
O alterador usa memória nãovolatile para informações de status elemento. |
|
O alterador pode usar uma unidade como um elemento de armazenamento independente; ou seja, ele pode armazenar mídia na unidade sem lê-la. Para um alterador SCSI, esse sinalizador reflete o estado do bit DT na página de recursos do dispositivo. |
|
O alterador pode usar uma porta de inserção/ejeção como um elemento de armazenamento independente. Para um alterador SCSI, esse sinalizador reflete o estado do bit de E/S na página de recursos do dispositivo. |
|
O alterador pode usar um slot como um elemento de armazenamento independente para mídia. Para um alterador SCSI, esse sinalizador reflete o estado do bit ST na página de recursos do dispositivo. Os slots são o local de armazenamento normal para mídia, portanto, o alterador deve dar suporte a essa funcionalidade. |
|
O alterador pode usar um transporte como um elemento de armazenamento independente. Para um alterador SCSI, esse sinalizador reflete o estado do bit MT na página de recursos do dispositivo. |
|
O alterador pode verificar as informações de volume. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando SEND VOLUME TAG com um código de ação de envio de ASSERT. |
|
O alterador dá suporte à identificação de volume. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte aos comandos SEND VOLUME TAG e REQUEST VOLUME ELEMENT ADDRESS. |
|
O alterador pode substituir informações de volume. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando SEND VOLUME TAG com um código de ação de envio de REPLACE. |
|
O alterador pode pesquisar informações de volume. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando SEND VOLUME TAG com um código de ação de envio de TRANSLATE. |
|
O alterador pode limpar as informações de volume existentes. Para um alterador SCSI, esse sinalizador indica se o alterador dá suporte ao comando SEND VOLUME TAG com um código de ação de envio de UNDEFINE. |
Features1
Todos os recursos adicionais compatíveis com o alterador. Esse membro pode ser um ou mais dos valores a seguir.
MoveFromTransport
Indica se o alterador dá suporte à movimentação de uma parte da mídia de um elemento de transporte para outro elemento de transporte, um slot de armazenamento, uma porta de inserção/ejeção ou uma unidade. Para um alterador SCSI, isso é definido na página de funcionalidades do dispositivo. O transporte normalmente não é a origem ou o destino para mover ou trocar mídia.
Para determinar se o alterador pode mover a mídia para um determinado elemento, use os valores a seguir.
MoveFromSlot
Indica se o alterador dá suporte à movimentação média de um slot de armazenamento para um elemento de transporte, outro slot de armazenamento, uma porta de inserção/ejeção ou uma unidade. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à movimentação.
MoveFromIePort
Indica se o alterador dá suporte à movimentação média de uma porta de inserção/ejeção para um elemento de transporte, um slot de armazenamento, outra porta de inserção/ejeção ou uma unidade. Para um alterador SCSI, isso é definido na página de funcionalidades do dispositivo. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à movimentação.
MoveFromDrive
Indica se o alterador dá suporte à movimentação média de uma unidade para um elemento de transporte, um slot de armazenamento, uma porta de inserção/ejeção ou outra unidade. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à movimentação.
ExchangeFromTransport
Indica se o alterador dá suporte à troca de mídia entre um elemento de transporte e outro elemento de transporte, um slot de armazenamento, uma porta de inserção/ejeção ou uma unidade. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à troca.
ExchangeFromSlot
Indica se o alterador dá suporte à troca de mídia entre um slot de armazenamento e um elemento de transporte, outro slot de armazenamento, uma porta de inserção/ejeção ou uma unidade. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à troca.
ExchangeFromIePort
Indica se o alterador dá suporte à troca de mídia entre uma porta de inserção/ejeção e um elemento de transporte, um slot de armazenamento, outra porta de inserção/ejeção ou uma unidade. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à troca.
ExchangeFromDrive
Indica se o alterador dá suporte à troca de mídia entre uma unidade e um elemento de transporte, um slot de armazenamento, uma porta de inserção/ejeção ou outra unidade. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte à troca.
LockUnlockCapabilities
Os elementos de um alterador que podem ser bloqueados ou desbloqueados programaticamente. Esse membro só será válido se CHANGER_LOCK_UNLOCK estiver definido em Recursos0.
Para determinar se o alterador pode bloquear ou desbloquear um elemento específico, use um ou mais dos valores a seguir.
PositionCapabilities
Os elementos para os quais um alterador pode posicionar seu transporte. Use os sinalizadores descritos em MoveFromTransport para determinar se o alterador dá suporte ao posicionamento do transporte para um elemento específico. Esse membro só será válido se CHANGER_POSITION_TO_ELEMENT estiver definido em Recursos0.
Reserved1[2]
Reservado para uso futuro.
Reserved2[2]
Reservado para uso futuro.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP |
Servidor mínimo com suporte | Windows Server 2003 |
Cabeçalho | winioctl.h (inclua Windows.h) |