WdfUsbInterfaceGetConfiguredPipe-Funktion (wdfusb.h)
[Gilt für KMDF und UMDF]
Die WdfUsbInterfaceGetConfiguredPipe-Methode gibt ein Handle an das Framework-Pipe-Objekt zurück, das einer angegebenen USB-Geräteschnittstelle und einem angegebenen Pipeindex zugeordnet ist. Optional gibt die Methode auch Informationen zur Pipe zurück.
Syntax
WDFUSBPIPE WdfUsbInterfaceGetConfiguredPipe(
[in] WDFUSBINTERFACE UsbInterface,
[in] UCHAR PipeIndex,
[in, out, optional] PWDF_USB_PIPE_INFORMATION PipeInfo
);
Parameter
[in] UsbInterface
Ein Handle für ein USB-Schnittstellenobjekt, das durch aufrufen von WdfUsbTargetDeviceGetInterface abgerufen wurde.
[in] PipeIndex
Ein nullbasierter Index in den Satz von Frameworkpipeobjekten, die dem angegebenen Schnittstellenobjekt zugeordnet sind.
[in, out, optional] PipeInfo
Ein Zeiger auf eine vom Aufrufer zugewiesene WDF_USB_PIPE_INFORMATION Struktur, die das Framework ausfüllt. Dieser Parameter ist optional und kann NULL sein.
Rückgabewert
Wenn der Vorgang erfolgreich ist, gibt WdfUsbInterfaceGetConfiguredPipe ein Handle an das Framework-Pipeobjekt zurück, das dem angegebenen Schnittstellenobjekt und dem angegebenen Pipeindex zugeordnet ist. Die Methode gibt NULL zurück, wenn die Größe der WDF_USB_PIPE_INFORMATION Struktur falsch ist oder wenn der Pipeindexwert zu groß ist.
Eine Fehlerüberprüfung tritt auf, wenn der Treiber ein ungültiges Objekthandle bereitstellt.
Hinweise
Ihr Treiber kann WdfUsbInterfaceGetConfiguredPipe aufrufen, nachdem er WdfUsbTargetDeviceSelectConfig aufgerufen hat.
Weitere Informationen zur WdfUsbInterfaceGetConfiguredPipe-Methode und USB-E/A-Zielen finden Sie unter USB-E/A-Ziele.
Beispiele
Im folgenden Codebeispiel wird eine USB-Abbruchanforderung an jede konfigurierte Pipe einer angegebenen USB-Schnittstelle gesendet.
BYTE count, i;
NTSTATUS status;
count = WdfUsbInterfaceGetNumConfiguredPipes(UsbInterface);
for (i = 0; i < count; i++) {
WDFUSBPIPE pipe;
pipe = WdfUsbInterfaceGetConfiguredPipe(
UsbInterface,
i,
NULL
);
status = WdfUsbTargetPipeAbortSynchronously(
pipe,
WDF_NO_HANDLE,
NULL
);
if (!NT_SUCCESS(status)) {
break;
}
}
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
KMDF-Mindestversion | 1.0 |
UMDF-Mindestversion | 2.0 |
Kopfzeile | wdfusb.h (einschließlich Wdfusb.h) |
Bibliothek | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf) |
Weitere Informationen
WdfUsbInterfaceGetNumConfiguredPipes