WdfUsbTargetDeviceCyclePortSynchronously-Funktion (wdfusb.h)
[Gilt nur für KMDF]
Die WdfUsbTargetDeviceCyclePortSynchronously Methode den USB-Anschluss ein, an den ein angegebenes Gerät angeschlossen ist.
Syntax
NTSTATUS WdfUsbTargetDeviceCyclePortSynchronously(
[in] WDFUSBDEVICE UsbDevice
);
Parameter
[in] UsbDevice
Ein Handle für ein USB-Geräteobjekt, das aus einem vorherigen Aufruf von WdfUsbTargetDeviceCreateWithParametersabgerufen wurde.
Rückgabewert
WdfUsbTargetDeviceCyclePortSynchronously gibt den E/A-Zielstatuswert zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt diese Methode möglicherweise einen der folgenden Werte zurück:
Rückgabecode | Beschreibung |
---|---|
|
Die IRQL des Aufrufers war ungültig. |
Diese Methode kann auch andere NTSTATUS-Wertezurückgeben.
Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.
Bemerkungen
Beim Einschalten eines Anschlusses wird das Gerät überraschend entfernt und neu aufgezählt. Ein Treiber kann nach dem Laden der Firmware in ein Gerät einen Stromzyklus anfordern.
Bevor das Framework den USB-Port des E/A-Ziels wechselt, werden alle E/A-Anforderungen abgebrochen, die in der E/A-Zielwarteschlange verbleiben. Der Treiber darf erst dann zusätzliche E/A-Anforderungen an das E/A-Ziel senden, wenn WdfUsbTargetDeviceCyclePortSynchronously zurückgegeben wird.
Der Treiber muss WdfIoTargetStop- aufrufen, bevor er WdfUsbTargetDeviceCyclePortSynchronouslyaufruft.
Weitere Informationen zu den WdfUsbTargetDeviceCyclePortSynchronously Methode und USB-E/A-Zielen finden Sie unter USB-E/A-Ziele.
Beispiele
Im folgenden Codebeispiel wird der USB-Anschluss eines angegebenen Geräts energiegeschützt.
NTSTATUS status;
status = WdfUsbTargetDeviceCyclePortSynchronously(UsbDevice);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Minimale KMDF-Version | 1.0 |
Header- | wdfusb.h (include Wdfusb.h) |
Library | Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.) |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf) |