Partilhar via


CHANGER_ELEMENT_STATUS_EX estrutura (ntddchgr.h)

A rotina ChangerGetElementStatus retorna informações de status nessa estrutura.

Sintaxe

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;

Membros

Element

Especifica o elemento do tipo CHANGER_ELEMENT ao qual essa estrutura se refere.

SrcElementAddress

Especifica o elemento do tipo CHANGER_ELEMENT do qual a mídia atualmente neste elemento foi movida mais recentemente. Esse membro só será válido se ELEMENT_STATUS_SVALID também estiver definido em Flags. Esse valor deve ser um deslocamento baseado em zero do valor exclusivo do dispositivo.

Flags

Indica o status do elemento, que pode ser um ou mais dos valores a seguir.

ELEMENT_STATUS_FULL

O elemento contém um pedaço de mídia. Esse sinalizador será válido se ElementType no membro do elemento estiver changerDrive, ChangerSlot ou changerTransport. Se ElementType for ChangerIEPort, esse sinalizador será válido somente se CHANGER_REPORT_IEPORT_STATE também estiver definido no Features0 de GET_CHANGER_PARAMETERS.

ELEMENT_STATUS_IMPEXP

A mídia nesse elemento foi colocada lá por um operador. Esse sinalizador só será válido se ElementType no membro do elemento estiver ChangerIEPort.

ELEMENT_STATUS_EXCEPT

O elemento está em um estado anormal. Verifique o membro ExceptionCode para obter mais informações.

ELEMENT_STATUS_ACCESS

O elemento de transporte do alterador pode acessar a parte da mídia neste elemento. O driver de miniclasse limpa esse sinalizador para indicar que a mídia não está acessível por um dos seguintes motivos: se ElementType no membro elemento estiver ChangerSlot, o slot não estará presente no changer (por exemplo, a revista que contém o slot foi removida fisicamente). Se ElementType for ChangerDrive, a unidade será interrompida ou removida. Se ElementType for ChangerIEPort, o IEport será estendido.

ELEMENT_STATUS_EXENAB

O elemento dá suporte à exportação de mídia por meio do IEport do changer.

ELEMENT_STATUS_INENAB

O elemento dá suporte à importação de mídia por meio do IEport do changer.

ELEMENT_STATUS_LUN_VALID

O número do dispositivo no membro lun é válido. Esse sinalizador só será válido se ElementType no membro do elemento estiver changerDrive.

ELEMENT_STATUS_ID_VALID

A ID de destino SCSI no membro targetID do é válida. Esse sinalizador só será válido se ElementType no membro do elemento estiver changerDrive.

ELEMENT_STATUS_NOT_BUS

A unidade no endereço indicado pelo Lun e targetID está em um barramento SCSI diferente do próprio alterador.

ELEMENT_STATUS_PRODUCT_DATA

O número de série no membro SerialNumber é válido.

ELEMENT_STATUS_INVERT

A mídia no elemento foi invertida. Esse sinalizador será válido somente se o sinalizador de ELEMENT_STATUS_SVALID também estiver definido.

ELEMENT_STATUS_SVALID

O membro do SourceElement e o sinalizador ELEMENT_STATUS_INVERT são válidos.

ELEMENT_STATUS_PVOLTAG

As informações de volume primário no membro PrimaryVolumeID são válidas.

ELEMENT_STATUS_AVOLTAG

Informações de volume alternativas no membro AlternateVolumeID são válidas.

ExceptionCode

Indica que o elemento está em um estado anormal. Esse membro só será válido se ELEMENT_STATUS_EXCEPT estiver definido em Flags. ExceptionCode pode ser definido como um dos valores a seguir.

ERROR_LABEL_UNREADABLE

O leitor de código de barra do modificador não pôde ler o rótulo de código de barra na parte da mídia neste elemento, pois a mídia está ausente, danificada, posicionada incorretamente ou de cabeça para baixo.

ERROR_LABEL_QUESTIONABLE

O rótulo pode ser inválido devido a uma condição de atenção de unidade.

ERROR_SLOT_NOT_PRESENT

No momento, o slot neste endereço de elemento não está instalado no alterador. Um driver de miniclasse define esse código para cada slot em uma revista removível para indicar que a revista foi removida.

ERROR_DRIVE_NOT_INSTALLED

A unidade neste endereço de elemento está ausente. Se um alterador puder continuar operando sem a unidade, seu driver de miniclasse definirá ERROR_DRIVE_NOT_INSTALLED para a unidade.

ERROR_TRAY_MALFUNCTION

A unidade nesse endereço de elemento tem uma bandeja que deve ser estendida para carregar ou remover mídia, e a bandeja não está se estendendo conforme necessário.

ERROR_UNHANDLED_ERROR

Condição de erro desconhecida.

TargetId

Especifica a ID de destino SCSI da unidade neste endereço de elemento para um alterador SCSI. Esse membro só será válido se ElementType no membro do elemento estiver do ChangerDrive e ELEMENT_STATUS_ID_VALID estiver definido em Flags.

Lun

Especifica o número do dispositivo SCSI da unidade neste endereço de elemento. Esse membro só será válido se ElementType no membro do elemento for do ChangerDrive e ELEMENT_STATUS_LUN_VALID estiver definido em Flags.

Reserved

Reservado para uso futuro. O valor desse membro deve ser zero.

PrimaryVolumeID[MAX_VOLUME_ID_SIZE]

Especifica o identificador de volume primário para a mídia. Se o alterador der suporte a um leitor de código de barras e o leitor estiver instalado (conforme indicado por CHANGER_BAR_CODE_SCANNER_INSTALLED no Features0 de GET_CHANGER_PARAMETERS), o driver de miniclasse deverá definir PrimaryVolumeID para o código de barra da mídia. Se o changer não der suporte a um leitor de código de barra, o driver de miniclasse deverá definir primaryVolumeID com o valor atribuído anteriormente à mídia usando a rotina ChangerQueryVolumeTags com uma ação ASSERT_PRIMARY ou REPLACE_PRIMARY. Esse membro só será válido se ELEMENT_STATUS_PVOLTAG também estiver definido em Flags. Se o identificador de volume estiver ausente ou ilegível, o driver de miniclasse deverá limpar esse sinalizador e definir o status de erro apropriado. Esse identificador não deve ser maior que MAX_VOLUME_ID_SIZE bytes.

AlternateVolumeID[MAX_VOLUME_ID_SIZE]

Especifica a identificação de volume alternativa para a mídia. Esse membro é válido somente para mídia de dois lados e pertence à ID do lado invertido. Ele nunca representa um código de barras. O driver de miniclasse deve definir AlternateVolumeID para o valor atribuído anteriormente à mídia usando a rotina changerQueryVolumeTags com uma ação ASSERT_ALTERNATE ou REPLACE_ALTERNATE. O identificador não deve ser maior que MAX_VOLUME_ID_SIZE bytes e é válido somente se ELEMENT_STATUS_AVOLTAG também estiver definido em Flags.

VendorIdentification[VENDOR_ID_LENGTH]

Contém a ID do fornecedor. Esse identificador não deve ser maior que VENDOR_ID_LENGTH bytes.

ProductIdentification[PRODUCT_ID_LENGTH]

Contém a ID do produto. Esse identificador não deve ser maior que PRODUCT_ID_LENGTH bytes.

SerialNumber[SERIAL_NUMBER_LENGTH]

Contém o número de série. Esse identificador não deve ser maior que SERIAL_NUMBER_LENGTH bytes.

Observações

A rotina ChangerGetElementStatus retorna informações de status nessa estrutura se informações de fornecedor, produto ou número de série forem necessárias. Caso contrário, ChangerGetElementStatus retornará informações de status na estrutura CHANGER_ELEMENT_STATUS.

Requisitos

Requisito Valor
cabeçalho ntddchgr.h

Consulte também

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS

ChangerGetElementStatus

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_ELEMENT_STATUS