Condividi tramite


Funzione WdfIoQueueRetrieveRequestByFileObject (wdfio.h)

[Si applica a KMDF e UMDF]

Il metodo WdfIoQueueRetrieveRequestByFileObject recupera la richiesta di I/O disponibile successiva, da una coda di I/O specificata associata a un oggetto file specificato.

Sintassi

NTSTATUS WdfIoQueueRetrieveRequestByFileObject(
  [in]  WDFQUEUE      Queue,
  [in]  WDFFILEOBJECT FileObject,
  [out] WDFREQUEST    *OutRequest
);

Parametri

[in] Queue

Handle a un oggetto code del framework.

[in] FileObject

Handle per un oggetto file framework.

[out] OutRequest

Puntatore a una posizione che riceve un handle a un oggetto richiesta framework. Se WdfIoQueueRetrieveRequestByFileObject non restituisce STATUS_SUCCESS, non imposta il valore della posizione.

Valore restituito

WdfIoQueueRetrieveRequestByFileObject restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questo metodo potrebbe restituire uno dei valori seguenti:

Codice restituito Descrizione
STATUS_INVALID_PARAMETER
Il driver ha fornito un handle non valido.
STATUS_NO_MORE_ENTRIES
Il framework ha raggiunto la fine della coda di I/O.
STATUS_INVALID_DEVICE_STATE
La coda di I/O specificata è configurata per il metodo di invio parallelo.
STATUS_WDF_PAUSED
La coda di I/O specificata è gestita dall'alimentazione e il relativo dispositivo è in uno stato di bassa potenza.
 

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

Un driver che ha configurato una coda di I/O per l'invio manuale o sequenziale potrebbe chiamare WdfIoQueueRetrieveRequestByFileObject. Per altre informazioni sull'uso di WdfIoQueueRetrieveRequestByFileObject con i metodi di invio manuale o sequenziale, vedere Invio di metodi per le richieste di I/O.

Dopo aver chiamato WdfIoQueueRetrieveRequestByFileObject per ottenere una richiesta di I/O, il driver possiedela richiesta e deve elaborare la richiesta di I/O in qualche modo.

Per altre informazioni sul metodo WdfIoQueueRetrieveRequestByFileObject , vedere Gestione delle code di I/O.

Esempio

L'esempio di codice seguente ottiene, da una coda di I/O specificata, un handle all'oggetto richiesta framework successivo associato a un oggetto file framework specificato.

WDFREQUEST  request;

status = WdfIoQueueRetrieveRequestByFileObject(
                                               queue,
                                               fileObject,
                                               &request
                                               );

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Versione UMDF minima 2,0
Intestazione wdfio.h (includere Wdf.h)
Libreria Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
Regole di conformità DDI DoubleCompletion(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Vedi anche

WdfIoQueueRetrieveFoundRequest

WdfIoQueueRetrieveNextRequest