Notes
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 WdfRequestSetInformation définit les informations d’état d’achèvement d’une requête d’E/S spécifiée.
Syntaxe
void WdfRequestSetInformation(
[in] WDFREQUEST Request,
[in] ULONG_PTR Information
);
Paramètres
[in] Request
Handle vers un objet de requête de framework.
[in] Information
Informations d’état d’achèvement définies par le pilote pour la demande.
Valeur de retour
Aucun
Remarques
Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.
Les pilotes basés sur l’infrastructure utilisent la méthode WdfRequestSetInformation pour fournir des informations spécifiques au pilote associées à l’achèvement d’une requête d’E/S, comme le nombre d’octets transférés. D’autres pilotes peuvent obtenir ces informations en appelant WdfRequestGetInformation.
Les pilotes peuvent également spécifier des informations d’état d’achèvement en appelant WdfRequestCompleteWithInformation.
Pour plus d’informations sur WdfRequestSetInformation, consultez Fin des requêtes d’E/S.
Exemples
L’exemple de code suivant définit les informations d’achèvement des demandes basées sur la valeur du code de contrôle d’E/S qu’une EvtIoDeviceControl fonction de rappel reçoit.
VOID
MyEvtIoDeviceControl(
IN WDFQUEUE Queue,
IN WDFREQUEST Request,
IN size_t OutputBufferLength,
IN size_t InputBufferLength,
IN ULONG IoControlCode
)
{
switch (IoControlCode) {
case MY_IOCTL_CODE_1:
WdfRequestSetInformation(
Request,
VALUE_1
);
status = STATUS_SUCCESS;
break;
case MY_IOCTL_CODE_2:
WdfRequestSetInformation(
Request,
VALUE_2
);
status = STATUS_SUCCESS;
break;
case MY_IOCTL_CODE_3:
WdfRequestSetInformation(
Request,
VALUE_3
);
status = STATUS_SUCCESS;
break;
default:
status = STATUS_INVALID_DEVICE_REQUEST;
break;
}
WdfRequestComplete(
Request,
status
);
}
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) |