IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS IOCTL (hidclass.h)
Die IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS Anforderung ruft die Größe der Eingabeberichtswarteschlange für eine Sammlung der obersten Ebene ab.
Die Eingabeberichtswarteschlange wird als Ringpuffer implementiert. Wenn eine Sammlung Daten schneller an den HID-Klassentreiber überträgt, als die Eingabeberichte gelesen werden, können Berichte verloren gehen. Die Größe der Eingabeberichtswarteschlange kann mithilfe von IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS angepasst werden.
Allgemeine Informationen zu HIDClass-Geräten finden Sie unter HID-Sammlungen.
Hauptcode
Eingabepuffer
Parameters.DeviceIoControl.OutputBufferLength in der E/A-Stapelposition des IRP gibt die Größe des Ausgabepuffers in Bytes an, die = sizeof(ULONG) sein >muss.
Eingabepufferlänge
Die Größe des Puffers ist sizeof(ULONG).
Ausgabepuffer
Irp->AssociatedIrp.SystemBuffer verweist auf einen Puffer, der die Größe der Berichtseingabewarteschlange empfängt.
Länge des Ausgabepuffers
Die Größe des Puffers ist sizeof(ULONG).
Statusblock
Der HID-Klassentreiber legt die folgenden Felder von Irp-IoStatus> fest:
- Informationen werden auf sizeof(ULONG) festgelegt, wenn die Größe der Berichtseingabewarteschlange erfolgreich abgerufen wird.
- Der Status wird auf STATUS_SUCCESS festgelegt, wenn die Übertragung ohne Fehler abgeschlossen wurde. Andernfalls wird ein entsprechender NTSTATUS-Fehlercode festgelegt.
Anforderungen
Anforderung | Wert |
---|---|
Header | hidclass.h (include Hidclass.h) |