ChangerGetParameters, fonction (mcd.h)
ChangerGetParameters gère les aspects spécifiques de l’appareil d’un IRP de contrôle d’appareil avec le code IOCTL IOCTL_CHANGER_GET_PARAMETERS.
Syntaxe
NTSTATUS ChangerGetParameters(
[in] PDEVICE_OBJECT DeviceObject,
[in] PIRP Irp
);
Paramètres
[in] DeviceObject
Pointeur vers l’objet d’appareil qui représente le changeur.
[in] Irp
Pointeur vers l’IRP.
Valeur de retour
ChangerGetParameters retourne la valeurXXX STATUS_ retournée par le pilote de port système ou l’une des valeurs suivantes :
STATUS_SUCCESS
STATUS_INFO_LENGTH_MISMATCH
STATUS_INSUFFICIENT_RESOURCES
Remarques
Cette routine est requise.
ChangerGetParameters retourne les paramètres d’un changeur, y compris le nombre et le type de ses éléments et la fonctionnalité qu’il prend en charge.
Le pilote de classe de changement vérifie la longueur de la mémoire tampon de sortie à l’emplacement de la pile d’E/S avant d’appeler ChangerGetParameters. Si la longueur de la mémoire tampon de sortie est inférieure à taille de(GET_CHANGER_PARAMETERS) le pilote de classe de changement retourne avec une valeur de STATUS_INFO_LENGTH_MISMATCH.
ChangerGetParameters récupère les données de paramètres de l’appareil en créant des bases de données SRB avec des bases de données cdB pour obtenir la page d’en-tête de paramètre SCSI, la page d’adresse de l’élément, la page géométrie de transport et la page des fonctionnalités de l’appareil ou l’équivalent non SCSI de ces données.
ChangerGetParameters remplit ensuite une structure de GET_CHANGER_PARAMETERS à Irp ->AssociatedIrp.SystemBuffer avant de revenir au pilote de classe de changement.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL | PASSIVE_LEVEL |