Partager via


IRequestCallbackCancel ::OnCancel, méthode (wudfddi.h)

[Avertissement : UMDF 2 est la dernière version de UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide de UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et il existe une prise en charge limitée de UMDF 1 sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Bien démarrer avec UMDF.]

La méthode OnCancel est appelée lorsqu’une application annule une opération d’E/S via la fonction CancelIoMicrosoft Win32, CancelIoExou Fonction CancelSynchronousIo.

Syntaxe

void OnCancel(
  [in] IWDFIoRequest *pWdfRequest
);

Paramètres

[in] pWdfRequest

Pointeur vers l’interface IWDFIoRequest qui représente l’objet de requête de framework à annuler.

Valeur de retour

Aucun

Remarques

L’infrastructure appelle la méthode OnCancel pour annuler la requête d’E/S que le paramètre pWdfRequest identifie. Le pilote doit d’abord déterminer s’il peut annuler la demande d’E/S. Si la demande peut être annulée, le pilote doit l’annuler. Pour plus d’informations sur l’annulation d’une demande, consultez l’annulation des requêtes d’E/S.

Si le pilote annule la requête, le pilote doit également effectuer la requête en appelant la méthode IWDFIoRequest ::Complete avec le paramètre CompletionStatus défini sur HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED).

L’infrastructure n’appelle pas OnCancel pour annuler une demande, sauf si le pilote a précédemment appelé la méthode IWDFIoRequest ::MarkCancelable pour activer l’annulation de la requête et inscrire l’interface IRequestCallbackCancel.

La User-Mode Driver Framework (UMDF) n’autorise qu’une seule méthode OnCancel par file d’attente. Par conséquent, lorsqu’un pilote appelle IWDFIoRequest ::MarkCancelable pour les requêtes associées à une file d’attente particulière pour permettre à l’infrastructure d’annuler ces requêtes, le pilote doit passer un pointeur vers l’interface IRequestCallbackCancel pour le même objet de rappel de requête. Plus tard, pour annuler chaque requête, l’infrastructure transmet un pointeur vers l’interface IWDFIoRequest pour la requête dans un appel à la méthode OnCancel de cet objet de rappel de requête.

Exigences

Exigence Valeur
plateforme cible Windows
d’en-tête wudfddi.h (include Wudfddi.h)

Voir aussi

IRequestCallbackCancel

IWDFIoRequest

IWDFIoRequest ::Complete

IWDFIoRequest ::MarkCancelable