ChangerInitializeElementStatus-Funktion (mcd.h)
ChangerInitializeElementStatus behandelt die gerätespezifischen Aspekte einer 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 die IRP.
Rückgabewert
ChangerInitializeElementStatus gibt die vom Systemporttreiber zurückgegebene status oder einen der folgenden Werte zurück:
STATUS_SUCCESS
STATUS_INVALID_PARAMETER
STATUS_INSUFFICIENT_RESOURCES
Wenn der Changer die Initialisierung 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.
Hinweise
Diese Routine ist erforderlich.
ChangerInitializeElementStatus aktualisiert den internen Speicher des Changers mit aktuellen Informationen zu seinen Elementen.
Der Changer-Klassentreiber überprüft die Länge des Eingabepuffers am E/A-Stapelspeicherort, bevor ChangerInitializeElementStatus aufgerufen wird.
Irp-SystemBuffer> verweist auf eine CHANGER_INITIALIZE_ELEMENT_STATUS-Struktur als Eingabeparameter, der die Elemente angibt, für die status initialisiert werden sollen, und ob Element status mit Daten initialisiert werden soll, die von Barcodebeschriftungen abgerufen werden.
Für einen SCSI-Changer erstellt ChangerInitializeElementStatus einen SRB mit einem CDB zum Initialisieren von Element status, übersetzt nullbasierte Elementadressen in gerätespezifische Adressen und sendet den SRB an den Systemporttreiber.
ChangerInitializeElementStatus legt das Feld Information im E/A-status-Block auf sizeof(CHANGER_INITIALIZE_ELEMENT_STATUS) fest, bevor zum Changer-Klassentreiber zurückzukehren.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL | PASSIVE_LEVEL |