Partager via


WdfRequestGetCompletionParams, fonction (wdfrequest.h)

[S’applique à KMDF et UMDF]

La méthode WdfRequestGetCompletionParams récupère les paramètres d’achèvement d’E/S associés à un objet de requête d’infrastructure spécifié.

Syntaxe

void WdfRequestGetCompletionParams(
  [in]      WDFREQUEST                     Request,
  [in, out] PWDF_REQUEST_COMPLETION_PARAMS Params
);

Paramètres

[in] Request

Handle pour un objet de requête d’infrastructure.

[in, out] Params

Pointeur vers une structure de WDF_REQUEST_COMPLETION_PARAMS fournie par l’appelant.

Valeur de retour

None

Remarques

Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.

Une fois qu’un pilote a appelé WdfRequestSend pour envoyer de manière synchrone ou asynchrone une demande d’E/S à une cible d’E/S, et une fois que la cible d’E/S a terminé la demande d’E/S, le pilote peut appeler WdfRequestGetCompletionParams pour obtenir les paramètres d’achèvement de la demande d’E/S.

La structure des paramètres d’achèvement contient des informations valides uniquement si le pilote a mis en forme la requête en appelant l’une des méthodes WdfIoTargetFormatXxx . Par exemple, consultez WdfIoTargetFormatRequestForRead.

Notez que si votre pilote appelle l’une des méthodes qui envoie des demandes d’E/S aux cibles d’E/S uniquement de manière synchrone (par exemple WdfIoTargetSendReadSynchronously), le pilote ne doit pas appeler WdfRequestGetCompletionParams.

La méthode WdfRequestGetCompletionParams copie les paramètres d’achèvement de la demande d’E/S dans la structure de WDF_REQUEST_COMPLETION_PARAMS spécifiée.

Si un pilote envoie une requête d’E/S de façon asynchrone, il appelle généralement cette méthode à partir d’une fonction de rappel CompletionRoutine .

Pour plus d’informations sur WdfRequestGetCompletionParams, consultez Achèvement des demandes d’E/S.

Exemples

L’exemple de code suivant initialise une structure WDF_REQUEST_COMPLETION_PARAMS , puis appelle WdfRequestGetCompletionParams.

WDF_REQUEST_COMPLETION_PARAMS completionParams;

WDF_REQUEST_COMPLETION_PARAMS_INIT(&completionParams);
WdfRequestGetCompletionParams(
                              request,
                              &completionParams
                              );

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.0
Version UMDF minimale 2.0
En-tête wdfrequest.h (inclure 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)

Voir aussi

CompletionRoutine

WDF_REQUEST_COMPLETION_PARAMS

WDF_REQUEST_COMPLETION_PARAMS_INIT