Freigeben über


IWDFIoRequest2::Reuse-Methode (wudfddi.h)

[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. Es werden keine neuen Features zu UMDF 1 hinzugefügt, und es gibt eingeschränkte Unterstützung für UMDF 1 für neuere Versionen von Windows 10. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF-.]

Die Wiederverwenden Methode initialisiert ein Framework-Anforderungsobjekt erneut, sodass es wiederverwendet werden kann.

Syntax

void Reuse(
  [in] HRESULT hrNewStatus
);

Parameter

[in] hrNewStatus

Ein HRESULT-typierter Statuswert, den das Framework der Anforderung zuweist.

Rückgabewert

Nichts

Bemerkungen

Wenn ein frameworkbasierter Treiber IWDFDevice::CreateRequest aufruft, um Anforderungsobjekte zu erstellen, kann der Treiber diese Anforderungsobjekte wiederverwenden. Treiber können auch Anforderungsobjekte wiederverwenden, die sie aus dem Framework in ihren E/A-Warteschlangen erhalten.

Ein Treiber kann ein Anforderungsobjekt wiederverwenden, nachdem die ursprüngliche Anforderung abgeschlossen wurde. Nachdem ein Treiber Wiederverwendenaufgerufen hat, muss der Inhalt der Anforderung erneut initialisiert werden.

Wenn die wiederverwendete Anforderung eine IRequestCallbackRequestCompletion::OnCompletion Rückruffunktion aufweisen soll, muss der Treiber IWDFIoRequest::SetCompletionCallback aufrufen, nachdem Wiederverwendenaufgerufen wurde.

Weitere Informationen zu Wiederverwenden vonfinden Sie unter Reusing Framework Request Objects.

Beispiele

Das folgende Codebeispiel zeigt, wie eine IRequestCallbackRequestCompletion::OnCompletion- Rückruffunktion die IWDFIoRequest2- schnittstelle abrufen und dann Reuseaufrufen kann.

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

Anforderungen

Anforderung Wert
Ende des Supports In UMDF 2.0 und höher nicht verfügbar.
Zielplattform- Desktop
Mindest-UMDF-Version 1.9
Header- wudfddi.h (include Wudfddi.h)
DLL- WUDFx.dll

Siehe auch

IRequestCallbackRequestCompletion::OnCompletion

IWDFIoRequest2-

IWDFIoRequest::SetCompletionCallback