ChangerInitializeElementStatus-Funktion (mcd.h)
ChangerInitializeElementStatus behandelt die gerätespezifischen Aspekte eines Gerätesteuerungs-IRP mit dem IOCTL-Code IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS.
Syntax
NTSTATUS ChangerInitializeElementStatus(
[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
ChangerInitializeElementStatus gibt den status zurück, der vom Systemporttreiber oder einem der folgenden Werte zurückgegeben wird:
STATUS_SUCCESS
STATUS_INVALID_PARAMETER
STATUS_INSUFFICIENT_RESOURCES
Wenn der Changer das Initialisieren eines Bereichs von Elementen eines bestimmten Typs nicht unterstützt und ChangerInitializeElementStatus mit einem anderen Elementtyp als AllElements aufgerufen wird, wird STATUS_INVALID_PARAMETER zurückgegeben.
Bemerkungen
Diese Routine ist erforderlich.
ChangerInitializeElementStatus aktualisiert den internen Speicher des Changers mit aktuellen Informationen zu seinen Elementen.
Der Änderungsklassentreiber überprüft die Eingabepufferlänge an der E/A-Stapelposition, bevor ChangerInitializeElementStatusaufgerufen wird.
Irp->SystemBuffer verweist auf eine CHANGER_INITIALIZE_ELEMENT_STATUS Struktur als Eingabeparameter, die die Elemente angibt, für die der Status initialisiert werden soll und ob der Elementstatus mit Daten initialisiert werden soll, die aus Barcodebeschriftungen abgerufen wurden.
Bei einem SCSI-Changer erstellt ChangerInitializeElementStatus einen SRB mit einem CDB zum Initialisieren des Elementstatus, übersetzt nullbasierte Elementadressen in gerätespezifische Adressen und sendet den SRB an den Systemporttreiber.
ChangerInitializeElementStatus legt das Feld Information im E/A-Statusblock auf Größe(CHANGER_INITIALIZE_ELEMENT_STATUS) fest, bevor sie zum Änderungsklassentreiber zurückkehren.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL- | PASSIVE_LEVEL |