Condividi tramite


Metodo IWDFIoQueue::RetrieveNextRequestByFileObject (wudfddi.h)

Avviso

UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Non vengono aggiunte nuove funzionalità a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2. Per altre info, vedi Introduzione con UMDF.

Il metodo RetrieveNextRequestByFileObject recupera da una coda di I/O la richiesta di I/O successiva il cui oggetto file corrisponde all'oggetto file specificato.

Sintassi

HRESULT RetrieveNextRequestByFileObject(
  [in]  IWDFFile      *pFile,
  [out] IWDFIoRequest **ppRequest
);

Parametri

[in] pFile

Puntatore all'interfaccia IWDFFile per l'oggetto file utilizzato per recuperare la richiesta di I/O successiva il cui oggetto file corrisponde a questo oggetto file fornito.

[out] ppRequest

Puntatore a un buffer che riceve un puntatore all'interfaccia IWDFIoRequest per l'oggetto richiesta successivo il cui oggetto file corrisponde all'oggetto file fornito oppure riceve NULL se la coda è vuota o se la richiesta successiva non viene trovata.

Valore restituito

RetrieveNextRequestByFileObject restituisce uno dei valori seguenti:

Codice restituito Descrizione
S_OK La richiesta di I/O successiva è stata recuperata correttamente dalla coda di I/O.
HRESULT_FROM_NT(STATUS_WDF_PAUSED) La coda non invia richieste. Questa situazione si verifica se il dispositivo subisce una transizione dello stato di alimentazione e tutte le code vengono arrestate dall'invio di richieste o se il driver ha chiamato in modo esplicito IWDFIoQueue::Stop per interrompere l'invio delle richieste. Questa situazione può verificarsi anche se il driver tenta di rimuovere una richiesta da una coda manuale gestita dall'alimentazione e che è spenta o se la coda viene sospesa.
HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS) Nessuna richiesta nella coda.
HRESULT_FROM_NT(STATUS_INVALID_DEVICE_STATE) La chiamata è stata effettuata per recuperare la richiesta da una coda parallela.

RetrieveNextRequestByFileObject potrebbe restituire anche altri valori HRESULT.

Commenti

Se un driver configura una coda di I/O per l'invio manuale delle richieste di I/O, il driver può chiamare il metodo RetrieveNextRequestByFileObject per ottenere la richiesta successiva il cui oggetto file corrisponde all'oggetto file fornito dalla coda. Per altre informazioni sull'invio manuale delle richieste di I/O, vedere Configuring Dispatch Mode for an I/O Queue .For more information about manually dispatch requests, see Configuring Dispatch Mode for an I/O Queue.

Se più richieste di I/O i cui oggetti file corrispondono all'oggetto file a cui punta il parametro pFile nella coda di I/O, viene restituita la prima richiesta di I/O.

Esempio

Per un esempio di codice su come usare il metodo RetrieveNextRequestByFileObject , vedere IWDFIoQueue::RetrieveNextRequest.

Requisiti

Requisito Valore
Fine del supporto Non disponibile in UMDF 2.0 e versioni successive.
Piattaforma di destinazione Desktop
Versione UMDF minima 1.5
Intestazione wudfddi.h (include Wudfddi.h)
DLL WUDFx.dll

Vedi anche