Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die IOCTL_HID_SET_OUTPUT_REPORT-Anforderung sendet einen Ausgabebericht an eine Sammlung auf oberster Ebene.
Allgemeine Informationen zu HIDClass-Geräten finden Sie unter HID Collections.
Hauptcode
Eingabepuffer
Der Parameters.DeviceIoControl.InputBufferLength Member wird auf die Größe eines vom Antragsteller zugewiesenen Eingabepuffers in Byte festgelegt, der einen HID-Klassenausgabebericht enthält.
Die Größe des Eingabepuffers in Byte. Der Puffer muss groß genug sein, um den Ausgabebericht und ein zusätzliches Byte zu enthalten, das eine Nichtzero-Berichts-ID angibt. Wenn keine Berichts-ID verwendet wird, ist der ID-Wert null.
Der Irp->AssociatedIrp.SystemBuffer Member verweist auf den Eingabepuffer, der einen Ausgabebericht enthält. Wenn die Auflistung Berichts-IDs enthält, muss der Anforderer das erste Byte des Puffers auf eine Nichtzero-Berichts-ID festlegen. Andernfalls muss der Antragsteller das erste Byte auf Null festlegen. Der Ausgabebericht befindet sich in ((PUCHAR)ReportBuffer + 1).
minidriver handling
Irp->UserBuffer verweist auf eine HID_XFER_PACKET Struktur, die der HID-Klassentreiber verwendet, um die folgenden Member einzugeben:
Eingabepufferlänge
Die Größe des Eingabepuffers in Byte. Der Puffer muss groß genug sein, um den Ausgabebericht und ein zusätzliches Byte zu enthalten, das eine Nichtzero-Berichts-ID angibt. Wenn keine Berichts-ID verwendet wird, ist der ID-Wert null.
minidriver handling
Die Größe einer HID_XFER_PACKET Struktur.
Ausgabepuffer
Nichts.
Länge des Ausgabepuffers
Nichts.
Statusblock
Der HID-Klassentreiber legt die folgenden Felder von Irp->IoStatusfest:
- Information ist auf Null festgelegt.
- Status wird auf STATUS_SUCCESS festgelegt, wenn die Übertragung ohne Fehler abgeschlossen wurde. Andernfalls wird er auf einen entsprechenden NTSTATUS-Fehlercode festgelegt.
minidriver handling
HID-Minidriver, die die E/A an das Gerät ausführen, legen die folgenden Felder von Irp->IoStatusfest:
- Information wird auf die Anzahl der Bytes festgelegt, die auf das Gerät übertragen werden.
- Status wird auf STATUS_SUCCESS festgelegt, wenn die Übertragung ohne Fehler abgeschlossen wurde. Andernfalls wird er auf einen entsprechenden NTSTATUS-Fehlercode festgelegt.
HID-Minidriver, die andere Treiber mit dieser IOCTL aufrufen, um die E/A auszuführen, sollten sicherstellen, dass das Information Feld des Statusblocks korrekt ist und den Inhalt des felds Status nicht ändern.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header- | hidclass.h (include Hidclass.h) |