Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[S’applique à KMDF et UMDF]
La méthode WdfIoQueueRetrieveFoundRequest remet une requête spécifiée au pilote, afin que le pilote puisse traiter la requête.
Syntaxe
NTSTATUS WdfIoQueueRetrieveFoundRequest(
[in] WDFQUEUE Queue,
[in] WDFREQUEST FoundRequest,
[out] WDFREQUEST *OutRequest
);
Paramètres
[in] Queue
Handle vers un objet de file d’attente framework.
[in] FoundRequest
Handle vers un objet de requête de framework obtenu en appelant WdfIoQueueFindRequest.
[out] OutRequest
Pointeur vers un emplacement qui reçoit un handle vers un objet de requête framework. Le pilote doit utiliser ce handle lors du traitement de la requête.
Valeur de retour
WdfIoQueueRetrieveFoundRequest retourne STATUS_SUCCESS si l’opération réussit. Sinon, cette méthode peut retourner l’une des valeurs suivantes :
| Code de retour | Description |
|---|---|
|
Le pilote a fourni un handle non valide. |
|
La requête identifiée par le paramètre FoundRequest est introuvable dans la file d’attente d’E/S. |
|
L’infrastructure a atteint la fin de la file d’attente d’E/S sans trouver une demande qui correspond aux critères de recherche. |
Cette méthode peut également retourner d’autres valeurs NTSTATUS .
Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.
Remarques
Après avoir appelé WdfIoQueueRetrieveFoundRequest pour obtenir une demande d’E/S, le pilote possède la demande et doit traiter la demande d’E/S d’une certaine manière.
Avant d’appeler WdfIoQueueRetrieveFoundRequest, le pilote doit appeler WdfIoQueueFindRequest, qui récupère un handle que le pilote peut utiliser comme paramètre FoundRequest pour WdfIoQueueRetrieveFoundRequest.
Si votre pilote a été créé avec KMDF version 1.11 ou ultérieure, le pilote peut appeler WdfIoQueueRetrieveFoundRequest sans appeler WdfIoQueueFindRequest. Dans ce cas, le pilote doit s’assurer que l’objet de requête est toujours valide et dans la file d’attente.
Si un appel à WdfIoQueueRetrieveFoundRequest retourne STATUS_NOT_FOUND, une demande qui était précédemment dans la file d’attente a été supprimée. La demande a peut-être été annulée.
Pour plus d’informations sur la méthode WdfIoQueueRetrieveFoundRequest, consultez Gestion des files d’attente d’E/S.
Exemples
Pour obtenir un exemple de code qui utilise WdfIoQueueRetrieveFoundRequest, consultez WdfIoQueueFindRequest.
Spécifications
| Besoin | Valeur |
|---|---|
| plateforme cible | Universel |
| version minimale de KMDF | 1.0 |
| version minimale de UMDF | 2.0 |
| En-tête | wdfio.h (include Wdf.h) |
| Bibliothèque | Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF) |
| IRQL | <= DISPATCH_LEVEL |
| règles de conformité DDI | DoubleCompletion(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), wdfioqueuefindrequestfailed, WdfIoQueueFindRequestFailed(kmdf), wdfioqueueretrievefoundrequest, WdfIoQueueRetrieveFoundRequest(kmdf) |