Condividi tramite


Metodo IWDFIoRequest2::Reuse (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 Reuse reinizializza un oggetto richiesta framework in modo che possa essere riutilizzato.

Sintassi

void Reuse(
  [in] HRESULT hrNewStatus
);

Parametri

[in] hrNewStatus

Valore di stato tipizzato HRESULT assegnato dal framework alla richiesta.

Valore restituito

nessuno

Osservazioni

Se un driver basato su framework chiama IWDFDevice::CreateRequest per creare oggetti richiesta, il driver può riutilizzare tali oggetti richiesta. I driver possono anche riutilizzare gli oggetti richiesta ricevuti dal framework nelle code di I/O.

Un driver può riutilizzare un oggetto richiesta dopo il completamento della richiesta originale. Dopo che un driver ha chiamato Reuse, il contenuto della richiesta deve essere reinizializzato.

Se si vuole che la richiesta riutilizzata abbia una funzione di callback IRequestCallbackRequestCompletion::OnCompletion , il driver deve chiamare IWDFIoRequest::SetCompletionCallback dopo la chiamata a Reuse.

Per altre informazioni sul riutilizzo, vedere Riutilizzo degli oggetti richiesta framework.

Esempio

L'esempio di codice seguente mostra come una funzione di callback IRequestCallbackRequestCompletion::OnCompletion può ottenere l'interfaccia IWDFIoRequest2 e quindi chiamare Reuse.

void 
STDMETHODCALLTYPE
CMyRemoteDevice::OnCompletion(
    __in IWDFIoRequest*  FxRequest,
    __in IWDFIoTarget*  FxTarget,
    __in IWDFRequestCompletionParams*  Params,
    __in void*  Context
    )
{
...
    CComQIPtr<IWDFIoRequest2> fxRequest2(FxRequest);
    fxRequest2->Reuse(S_OK);
...
}

Requisiti

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

Vedi anche

IRequestCallbackRequestCompletion::OnCompletion

IWDFIoRequest2

IWDFIoRequest::SetCompletionCallback