WdfRequestSetCompletionRoutine, fonction (wdfrequest.h)
[S’applique à KMDF et UMDF]
La méthode WdfRequestSetCompletionRoutine inscrit ou désinscrit une routine d’achèvement pour l’objet de requête de framework spécifié.
Syntaxe
void WdfRequestSetCompletionRoutine(
[in] WDFREQUEST Request,
[in, optional] PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine,
[in, optional] __drv_aliasesMem WDFCONTEXT CompletionContext
);
Paramètres
[in] Request
Handle vers un objet de requête de framework.
[in, optional] CompletionRoutine
Pointeur vers une fonction de rappel CompletionRoutine, si le pilote inscrit une routine d’achèvement, ou NULL du pilote annule l’inscription d’une routine d’achèvement précédemment inscrite.
[in, optional] CompletionContext
Pointeur non typé vers des informations de contexte définies par le pilote que l’infrastructure transmet à la fonction de rappel CompletionRoutine. Ce paramètre est facultatif et peut être NULL.
Valeur de retour
Aucun
Remarques
Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.
Si votre pilote transfère les demandes d’E/S, mais si vous souhaitez que votre pilote soit averti lorsqu’un pilote de niveau inférieur termine la demande, votre pilote peut fournir un CompletionRoutine fonction de rappel et appeler WdfRequestSetCompletionRou tineroutine pour inscrire la fonction. L’infrastructure appelle la fonction de rappel une fois qu’un pilote de niveau inférieur a terminé la requête d’E/S.
Pour plus d’informations sur WdfRequestSetCompletionRoutine, consultez Fin des requêtes d’E/S.
Exemples
Pour obtenir un exemple de code qui utilise WdfRequestSetCompletionRoutine, consultez WdfRequestSend.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
version minimale de KMDF | 1.0 |
version minimale de UMDF | 2.0 |
d’en-tête | wdfrequest.h (include Wdf.h) |
bibliothèque | Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
règles de conformité DDI | DriverCreate(kmdf), invalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql() kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), ReqCompletionRoutine(kmdf) |