Funzione ChangerGetParameters (mcd.h)
ChangerGetParameters gestisce gli aspetti specifici del dispositivo di un'IRP del controllo del dispositivo con il codice IOCTL IOCTL_CHANGER_GET_PARAMETERS.
Sintassi
NTSTATUS ChangerGetParameters(
[in] PDEVICE_OBJECT DeviceObject,
[in] PIRP Irp
);
Parametri
[in] DeviceObject
Puntatore all'oggetto dispositivo che rappresenta il changer.
[in] Irp
Puntatore all'IRP.
Valore restituito
ChangerGetParameters restituisce il valore STATUS_XXX restituito dal driver di porta di sistema o da uno dei valori seguenti:
STATUS_SUCCESS
STATUS_INFO_LENGTH_MISMATCH
STATUS_INSUFFICIENT_RESOURCES
Commenti
Questa routine è necessaria.
ChangerGetParameters restituisce i parametri di un modificatore, incluso il numero e il tipo degli elementi e la funzionalità supportata.
Il driver della classe changer controlla la lunghezza del buffer di output nella posizione dello stack I/O prima di chiamare ChangerGetParameters. Se la lunghezza del buffer di output è inferiore a sizeof(GET_CHANGER_PARAMETERS) il driver della classe changer restituisce con un valore di STATUS_INFO_LENGTH_MISMATCH.
ChangerGetParameters recupera i dati dei parametri dal dispositivo tramite la compilazione di SRB con CDB per ottenere la pagina dell'intestazione dei parametri SCSI, la pagina dell'indirizzo dell'elemento, la pagina della geometria di trasporto e la pagina delle funzionalità del dispositivo o l'equivalente non SCSI di questi dati.
ChangerGetParameters compila quindi una struttura GET_CHANGER_PARAMETERS in Irp-AssociatedIrp.SystemBuffer> prima di tornare al driver della classe changer.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL | PASSIVE_LEVEL |