Partager via


Méthode IWDFIoRequest2 ::IsCanceled (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 IsCanceled détermine si le gestionnaire d’E/S a tenté d’annuler une demande d’E/S.

Syntaxe

BOOL IsCanceled();

Valeur de retour

IsCanceled retourne TRUE si le gestionnaire d’E/S a tenté d’annuler la demande d’E/S. Cette méthode retourne FALSE pour l’une des raisons suivantes :

  • Le gestionnaire d’E/S n’a pas tenté d’annuler la demande.
  • Le pilote appelant n’est pas propriétaire de la demande.
  • Le pilote appelant a appelé la méthode IWDFIoRequest ::MarkCancelable .

Remarques

Si votre pilote n’a pas appelé IWDFIoRequest ::MarkCancelable pour inscrire une fonction de rappel IRequestCallbackCancel ::OnCancel , mais si vous souhaitez que votre pilote détermine si le gestionnaire d’E/S a tenté d’annuler une demande d’E/S, il peut appeler IsCanceled.

Un pilote peut appeler IsCanceled pour une requête uniquement si le pilote est propriétaire de la demande d’E/S. Si le pilote a appelé IWDFIoRequest ::MarkCancelable, il doit appeler IWDFIoRequest ::UnmarkCancelable avant d’appeler IsCanceled.

Si IsCanceled retourne TRUE, votre pilote doit annuler la demande en appelant IWDFIoRequest ::Complete avec le paramètre CompletionStatus défini sur HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED).

Pour plus d’informations sur IsCanceled, consultez Annulation des demandes d’E/S.

Exemples

Dans l’exemple de code suivant, si IsCanceled retourne TRUE, le pilote termine la demande d’E/S en appelant IWDFIoRequest ::Terminer avec une status d’achèvement de HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED).

if (fxRequest2->IsCanceled())
{
    fxRequest2->Complete(HRESULT_FROM_WIN32(ERROR_OPERATION_ABORTED));
}
...

Configuration requise

Condition requise Valeur
Fin de la prise en charge Non disponible dans UMDF 2.0 et versions ultérieures.
Plateforme cible Desktop (Expérience utilisateur)
Version UMDF minimale 1,9
En-tête wudfddi.h (inclure Wudfddi.h)
DLL WUDFx.dll

Voir aussi

IRequestCallbackCancel ::OnCancel

IWDFIoRequest2

IWDFIoRequest ::MarkCancelable

IWDFIoRequest ::UnmarkCancelable