Compartilhar via


Função ChangerInitializeElementStatus (mcd.h)

ChangerInitializeElementStatus manipula os aspectos específicos do dispositivo de um IRP de controle de dispositivo com o código IOCTL IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS.

Sintaxe

NTSTATUS ChangerInitializeElementStatus(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);

Parâmetros

[in] DeviceObject

Ponteiro para o objeto do dispositivo que representa o alterador.

[in] Irp

Ponteiro para o IRP.

Valor de retorno

ChangerInitializeElementStatus retorna o status retornado pelo driver de porta do sistema ou um dos seguintes valores:

STATUS_SUCCESS

STATUS_INVALID_PARAMETER

STATUS_INSUFFICIENT_RESOURCES

Se o changer não der suporte à inicialização de um intervalo de elementos de um tipo específico e ChangerInitializeElementStatus for chamado com um tipo de elemento diferente de AllElements, ele retornará STATUS_INVALID_PARAMETER.

Observações

Essa rotina é necessária.

ChangerInitializeElementStatus atualiza a memória interna do alterador com informações atuais sobre seus elementos.

O driver de classe do alterador verifica o comprimento do buffer de entrada no local da pilha de E/S antes de chamar ChangerInitializeElementStatus.

irp –> SystemBuffer aponta para uma estrutura de CHANGER_INITIALIZE_ELEMENT_STATUS como um parâmetro de entrada que indica os elementos para os quais inicializar o status e se deve inicializar o status do elemento com dados obtidos de rótulos de código de barras.

Para um changer SCSI, ChangerInitializeElementStatus cria um SRB com um CDB para inicializar o status do elemento, converte endereços de elementos baseados em zero em endereços específicos do dispositivo e envia o SRB para o driver de porta do sistema.

ChangerInitializeElementStatus define o campo informações no bloco de status de E/S para tamanhos de(CHANGER_INITIALIZE_ELEMENT_STATUS) antes de retornar ao driver de classe do changer.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho mcd.h (include Mcd.h, Ntddchgr.h)
IRQL PASSIVE_LEVEL

Consulte também

CHANGER_ELEMENT_LIST

CHANGER_INITIALIZE_ELEMENT_STATUS

ChangerGetElementStatus