Função ChangerGetParameters (mcd.h)
ChangerGetParameters manipula os aspectos específicos do dispositivo de um IRP de controle de dispositivo com o código IOCTL IOCTL_CHANGER_GET_PARAMETERS.
Sintaxe
NTSTATUS ChangerGetParameters(
[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
ChangerGetParameters retorna o valor deXXX STATUS_ retornado pelo driver de porta do sistema ou um dos seguintes valores:
STATUS_SUCCESS
STATUS_INFO_LENGTH_MISMATCH
STATUS_INSUFFICIENT_RESOURCES
Observações
Essa rotina é necessária.
ChangerGetParameters retorna os parâmetros de um alterador, incluindo o número e o tipo de seus elementos e a funcionalidade que ele oferece suporte.
O driver de classe do alterador verifica o comprimento do buffer de saída no local da pilha de E/S antes de chamar ChangerGetParameters. Se o comprimento do buffer de saída for menor que tamanho de(GET_CHANGER_PARAMETERS) o driver de classe do alterador retornará com um valor de STATUS_INFO_LENGTH_MISMATCH.
ChangerGetParameters recupera dados de parâmetro do dispositivo criando SRBs com CDBs para obter a página de cabeçalho do parâmetro SCSI, a página de endereço do elemento, a página de geometria de transporte e a página de recursos do dispositivo ou o equivalente não SCSI desses dados.
ChangerGetParameters preenche uma estrutura de GET_CHANGER_PARAMETERS no irp –> AssociatedIrp.SystemBuffer antes de retornar ao driver de classe do alterador.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL | PASSIVE_LEVEL |