Freigeben über


ChangerGetParameters-Funktion (mcd.h)

ChangerGetParameters behandelt die gerätespezifischen Aspekte eines Gerätesteuerungs-IRP mit dem IOCTL-Code IOCTL_CHANGER_GET_PARAMETERS.

Syntax

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

Parameter

[in] DeviceObject

Zeiger auf das Geräteobjekt, das den Changer darstellt.

[in] Irp

Zeiger auf das IRP.

Rückgabewert

ChangerGetParameters den vom Systemporttreiber oder einem der folgenden Werte zurückgegebenen STATUS_XXX- wert zurück:

STATUS_SUCCESS

STATUS_INFO_LENGTH_MISMATCH

STATUS_INSUFFICIENT_RESOURCES

Bemerkungen

Diese Routine ist erforderlich.

ChangerGetParameters gibt die Parameter eines Änderungsgebers zurück, einschließlich der Anzahl und des Typs seiner Elemente und der unterstützten Funktionalität.

Der Änderungsklassentreiber überprüft die Länge des Ausgabepuffers am E/A-Stapelspeicherort, bevor ChangerGetParametersaufgerufen wird. Wenn die Länge des Ausgabepuffers kleiner als Größe(GET_CHANGER_PARAMETERS) ist, gibt der Änderungsklassentreiber den Wert STATUS_INFO_LENGTH_MISMATCH zurück.

ChangerGetParameters Parameterdaten vom Gerät abrufen, indem SRBs mit CDBs erstellt werden, um die Kopfzeile des SCSI-Parameters, die Elementadressseite, die Transportgeometrieseite und die Seite mit den Gerätefunktionen oder die Nicht-SCSI-Entsprechung dieser Daten abzurufen.

ChangerGetParameters füllt dann eine GET_CHANGER_PARAMETERS Struktur bei Irp->AssociatedIrp.SystemBuffer aus, bevor sie zum Änderungsklassentreiber zurückkehren.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- mcd.h (include Mcd.h, Ntddchgr.h)
IRQL- PASSIVE_LEVEL

Siehe auch

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_PARAMETERS