Méthode IRequestCallbackCancel ::OnCancel (wudfddi.h)

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

La méthode OnCancel est appelée lorsqu’une application annule une opération d’E/S via la fonction Microsoft Win32 CancelIo, CancelIoEx ou CancelSynchronousIo .

Syntaxe

void OnCancel(
  [in] IWDFIoRequest *pWdfRequest
);

Paramètres

[in] pWdfRequest

Pointeur vers l’interface IWDFIoRequest qui représente l’objet de demande d’infrastructure à annuler.

Valeur de retour

None

Remarques

L’infrastructure appelle la méthode OnCancel pour annuler la demande 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 Annulation des demandes d’E/S.

Si le pilote annule la demande, il doit également effectuer la demande 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 permettre l’annulation de la demande et inscrire l’interface IRequestCallbackCancel .

Le 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 demandes associées à une file d’attente particulière pour permettre à l’infrastructure d’annuler ces demandes, le pilote doit passer un pointeur vers l’interface IRequestCallbackCancel pour le même objet request-callback. 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.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête wudfddi.h (inclure Wudfddi.h)

Voir aussi

IRequestCallbackCancel

IWDFIoRequest

IWDFIoRequest ::Complete

IWDFIoRequest ::MarkCancelable