Funzione WdfUsbTargetDeviceCyclePortSynchronously (wdfusb.h)

[Si applica solo a KMDF]

Il metodo WdfUsbTargetDeviceCyclePortSynchronously ciclicamente la porta USB a cui è collegato un dispositivo specificato.

Sintassi

NTSTATUS WdfUsbTargetDeviceCyclePortSynchronously(
  [in] WDFUSBDEVICE UsbDevice
);

Parametri

[in] UsbDevice

Handle a un oggetto dispositivo USB ottenuto da una chiamata precedente a WdfUsbTargetDeviceCreateWithParameters.

Valore restituito

WdfUsbTargetDeviceCyclePortSynchronously restituisce il valore di stato di completamento della destinazione I/O se l'operazione ha esito positivo. In caso contrario, questo metodo potrebbe restituire uno dei valori seguenti:

Codice restituito Descrizione
STATUS_INVALID_DEVICE_REQUEST
Il chiamante IRQL non è valido.
 

Questo metodo potrebbe restituire anche altri valori NTSTATUS.

Un controllo di bug si verifica se il driver fornisce un handle di oggetti non valido.

Commenti

Il ciclo di alimentazione di una porta causa la rimozione sorpresa e l'enumerazione del dispositivo. Un driver potrebbe richiedere un ciclo di alimentazione dopo aver caricato il firmware in un dispositivo.

Prima che il framework cicli la porta USB della destinazione di I/O, annulla tutte le richieste di I/O che rimangono nella coda della destinazione di I/O. Il driver non deve inviare richieste di I/O aggiuntive alla destinazione di I/O fino a quando WdfUsbTargetDeviceCyclePortSynchronously restituisce .

Il driver deve chiamare WdfIoTargetStop prima di chiamare WdfUsbTargetDeviceCyclePortSynchronously.

Per altre informazioni sul metodo WdfUsbTargetDeviceCyclePortSynchronously e sulle destinazioni di I/O USB, vedere Destinazioni di I/O USB.

Esempio

L'esempio di codice seguente esegue il ciclo di alimentazione di una porta USB specificata.

NTSTATUS status;

status = WdfUsbTargetDeviceCyclePortSynchronously(UsbDevice);

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Intestazione wdfusb.h (include Wdfusb.h)
Libreria Wdf01000.sys (vedere Framework Library Versioning).
IRQL PASSIVE_LEVEL
Regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf)

Vedi anche

WdfUsbTargetDeviceCreateWithParameters