IOCTL_INTERNAL_USBFN_TRANSFER_IN_APPEND_ZERO_PKT IOCTL (usbfnioctl.h)
Der Klassentreiber sendet diese Anforderung, um eine IN-Übertragung an die angegebene Pipe zu initiieren, und fügt ein Paket der Länge null an, um das Ende der Übertragung anzugeben.
Hauptcode
IRP_MJ_INTERNAL_DEVICE_CONTROL
Eingabepuffer
Ein Zeiger auf einen USBFNPIPEID-Typ , der die Pipe-ID angibt.
Eingabepufferlänge
Die Größe eines USBFNPIPEID-Typs .
Ausgabepuffer
Der Ausgabepuffer zeigt auf einen Datenpuffer, der die zu sendenden Daten enthält. Die IN-Richtung ist aus der Hostperspektive, die eine ausgehende Übertragung vom Gerät an den Host darstellt.
Länge des Ausgabepuffers
Die Größe der zu sendenden Daten.
Statusblock
Wenn die Anforderung erfolgreich ist, gibt die USB-Funktionsklassenerweiterung (UFX) STATUS_SUCCESS oder einen anderen status Wert zurück, für den NT_SUCCESS(status) true entspricht. Andernfalls wird ein status Wert zurückgegeben, für den NT_SUCCESS(status) false entspricht.
Hinweise
Diese Anforderung muss nach dem Senden der IOCTL_INTERNAL_USBFN_ACTIVATE_USB_BUS-Anforderung gesendet werden.
UFX leitet diese IOCTL-Anforderung an die Übertragungswarteschlange weiter, die von UfxEndpointCreate für den Endpunkt erstellt wurde.
Der Funktionscontroller initiiert eine Übertragung in IN-Richtung auf dem Endpunkt und fügt automatisch eine Paketübertragung der Länge null an, nachdem die im Datenpuffer bereitgestellten Daten erfolgreich gesendet wurden. Ein Paket der Länge null wird vom Controller nur angefügt, wenn die Größe der Übertragungsnutzlast ein Vielfaches der maximalen Paketgröße des Endpunkts ist.
Anforderungen
Anforderung | Wert |
---|---|
Header | usbfnioctl.h |