Condividi tramite


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 per 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
IRQL del chiamante non valido.
 

Questo metodo potrebbe anche restituire altri valori NTSTATUS .

Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.

Osservazioni

Il ciclo di alimentazione di una porta fa sì che il dispositivo venga rimosso e rinumerato a sorpresa. Un driver potrebbe richiedere un ciclo di alimentazione dopo il caricamento del firmware in un dispositivo.

Prima che il framework ciclica la porta USB della destinazione 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 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 I/O USB.

Esempi

L'esempio di codice seguente esegue il ciclo di alimentazione di una porta USB del dispositivo specificato.

NTSTATUS status;

status = WdfUsbTargetDeviceCyclePortSynchronously(UsbDevice);

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
versione minima di KMDF 1.0
intestazione wdfusb.h (include Wdfusb.h)
libreria Wdf01000.sys (vedere Controllo delle versioni della libreria framework).
IRQL PASSIVE_LEVEL
regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf)

Vedere anche

WdfUsbTargetDeviceCreateWithParameters