IOCTL_HID_SET_POLL_FREQUENCY_MSEC IOCTL (hidclass.h)
Die IOCTL_HID_SET_POLL_FREQUENCY_MSEC-Anforderung legt die Abrufhäufigkeit in Millisekunden für eine Sammlung der obersten Ebene fest.
Benutzermodusanwendungen oder Kernelmodustreiber, die unregelmäßige, opportunistische Lesevorgänge auf einem abgefragten Gerät ausführen, müssen ein Abrufintervall von 0 (null) bereitstellen. In solchen Fällen ändert IOCTL_HID_SET_POLL_FREQUENCY_MSEC die Abrufhäufigkeit des Geräts nicht. Wenn die Berichtsdaten beim Lesen jedoch nicht veraltet sind, wird der Lesevorgang sofort mit den neuesten Berichtsdaten für die angegebene Sammlung abgeschlossen. Wenn die Berichtsdaten veraltet sind, werden sie sofort aktualisiert, ohne auf den Ablauf des Abrufintervalls zu warten, und der Lesevorgang wird mit den neuen Daten abgeschlossen.
Wenn der Wert für das Abrufintervall, das im IRP bereitgestellt wird, nicht 0 (null) ist, muss er = MIN_POLL_INTERVAL_MSEC und <= MAX_POLL_INTERVAL_MSEC sein>.
Die Abrufe sind möglicherweise eingeschränkt, wenn mehrere Sammlungen der obersten Ebene vorhanden sind.
Allgemeine Informationen zu HIDClass-Geräten finden Sie unter HID-Sammlungen.
Hauptcode
Eingabepuffer
Parameters.DeviceIoControl.InputBufferLength in der E/A-Stapelposition des IRP gibt die Größe des Eingabepuffers in Bytes an, die = sizeof(ULONG) sein >muss.
Irp->AssociatedIrp.SystemBuffer enthält das neue Abrufintervall.
Länge des Eingabepuffers
Ein Wert, der größer oder gleich sizeof(ULONG) ist.
Ausgabepuffer
Keine.
Länge des Ausgabepuffers
Keine.
Statusblock
Der HID-Klassentreiber legt den Status-Member von Irp-IoStatus> auf STATUS_SUCCESS fest, wenn die Übertragung ohne Fehler abgeschlossen wurde. Andernfalls wird er auf einen geeigneten NTSTATUS-Fehlercode festgelegt.
Anforderungen
Anforderung | Wert |
---|---|
Header | hidclass.h (include Hidclass.h) |