ChangerGetParameters-Funktion (mcd.h)
ChangerGetParameters behandelt die gerätespezifischen Aspekte eines IRP für Gerätesteuerung 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 die IRP.
Rückgabewert
ChangerGetParameters gibt den vom Systemporttreiber zurückgegebenen STATUS_XXX-Wert oder einen der folgenden Werte zurück:
STATUS_SUCCESS
STATUS_INFO_LENGTH_MISMATCH
STATUS_INSUFFICIENT_RESOURCES
Hinweise
Diese Routine ist erforderlich.
ChangerGetParameters gibt die Parameter eines Changers zurück, einschließlich der Anzahl und des Typs seiner Elemente und der unterstützten Funktionalität.
Der Changer-Klassentreiber überprüft die Ausgabepufferlänge am E/A-Stapelspeicherort, bevor ChangerGetParameters aufgerufen wird. Wenn die Länge des Ausgabepuffers kleiner als sizeof(GET_CHANGER_PARAMETERS) ist, gibt der Changerklassentreiber den Wert STATUS_INFO_LENGTH_MISMATCH zurück.
ChangerGetParameters ruft Parameterdaten vom Gerät ab, indem SRBs mit CDBs erstellt werden, um die Kopfzeilenseite des SCSI-Parameters, die Seite der Elementadresse, die Seite für die Transportgeometrie 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 Changer-Klassentreiber zurückkehren.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL | PASSIVE_LEVEL |