Freigeben über


WdfRequestRequeue-Funktion (wdfrequest.h)

[Gilt für KMDF und UMDF]

Die WdfRequestRequeue Methode gibt eine E/A-Anforderung an den Kopf der E/A-Warteschlange zurück, von der sie an den Treiber übermittelt wurde.

Syntax

NTSTATUS WdfRequestRequeue(
  [in] WDFREQUEST Request
);

Parameter

[in] Request

Ein Handle zu einem Framework-Anforderungsobjekt.

Rückgabewert

WdfRequestRequeue gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt diese Methode möglicherweise einen der folgenden Werte zurück:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
Ein Eingabeparameter ist ungültig.
STATUS_INVALID_DEVICE_REQUEST
Dieser Wert wird zurückgegeben, wenn einer der folgenden Aktionen auftritt:
  • Die angegebene E/A-Anforderung stammt nicht aus einer E/A-Warteschlange.
  • Der Treiber besitzt nicht die E/A-Anforderung.
  • Die Anforderung kann abgebrochen werden.
  • Die Verteilermethode der Warteschlange ist nicht manuell.
 

Diese Methode kann auch andere NTSTATUS-Wertezurückgeben.

Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.

Bemerkungen

Ein Treiber kann WdfRequestRequeue- nur aufrufen, wenn er die manuelle Verteilermethode für die E/A-Warteschlange verwendet.

Wenn der Treiber WdfRequestRequeue aufruft, nachdem WdfIoQueuePurgeaufgerufen wurde, kann der erneute Versuch erfolgreich sein, bevor die Bereinigung abgeschlossen ist. In Den Versionen 1.9 und früher von KMDF stürzt das Betriebssystem ab. Dieses Problem wurde in KMDF, Version 1.11 und höher, behoben.

Weitere Informationen zu WdfRequestRequeuefinden Sie unter Requeuing I/O Requests.

Beispiele

Im folgenden Codebeispiel wird eine angegebene E/A-Anforderung an die Warteschlange zurückgegeben, von der der Treiber die Anforderung empfangen hat.

NTSTATUS status;

status = WdfRequestRequeue(request);

Anforderungen

Anforderung Wert
Zielplattform- Universal
Minimale KMDF-Version 1.0
Mindest-UMDF-Version 2.0
Header- wdfrequest.h (include Wdf.h)
Library Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL- <=DISPATCH_LEVEL
DDI-Complianceregeln DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)