IOCTL_CHANGER_GET_ELEMENT_STATUS IOCTL (ntddchgr.h)
Retorna o status de todos os elementos ou o status de um número especificado de elementos de um tipo específico.
Para obter uma descrição dos tipos de elemento possíveis, consulte CHANGER_ELEMENT.
Código principal
Buffer de entrada
O buffer em >AssociatedIrp.SystemBuffer contém os dados CHANGER_READ_ELEMENT_STATUS que indicam o tipo de elemento e o número de elementos para os quais retornar o status.
Se o chamador definir o VolumeTagInfo membro do CHANGER_READ_ELEMENT_STATUS para TRUE, o status do elemento retornado incluirá informações de marca de volume.
Comprimento do buffer de entrada
Parameters.DeviceIoControl.InputBufferLength no local da pilha de E/S indica o tamanho, em bytes, do buffer de parâmetro para entrada, que deve ser >= sizeof(CHANGER_READ_ELEMENT_STATUS).
Buffer de saída
O driver de miniclasse do alterador retorna os dados de status do elemento changer no buffer em AssociatedIrp.SystemBuffer>. Alguns elementos do tipo ChangerDrive retornam dados de informações do produto. Se o dispositivo fornecer informações sobre o produto, o driver de miniclasse relatará os dados de status do elemento em uma estrutura do tipo CHANGER_ELEMENT_STATUS_EX. O driver de miniclasse define ELEMENT_STATUS_PRODUCT_DATA no Flags membro da estrutura para indicar que ele contém dados de informações do produto. Para elementos de todos os tipos que não sejam changerDrive, o driver relata dados de status do elemento em uma estrutura do tipo CHANGER_ELEMENT_STATUS.
Comprimento do buffer de saída
Parameters.DeviceIoControl.OutputBufferLength indica o tamanho, em bytes, do buffer de parâmetro para saída. Para elementos do tipo ChangerDrive, esse valor deve ser >= NumberOfElements * sizeof(CHANGER_ELEMENT_STATUS_EX). Para elementos de todos os outros tipos, esse valor deve ser >= NumberOfElements * sizeof(CHANGER_ELEMENT_STATUS).
Bloco de status
O campo informações de é definido como o número de bytes retornados. O campo status está definido como STATUS_SUCCESS ou possivelmente STATUS_BUFFER_TOO_SMALL, STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES, STATUS_INVALID_ELEMENT_ADDRESS ou STATUS_INVALID_PARAMETER.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | ntddchgr.h (inclua Ntddchgr.h) |