Lire en anglais

Partager via


fonction de rappel EXT_DELETE_CALLBACK (wdm.h)

Une routine de rappel ExTimerDeleteCallback s’exécute lorsque le système d’exploitation supprime un objet minuteur EX_TIMER.

Syntaxe

EXT_DELETE_CALLBACK ExtDeleteCallback;

void ExtDeleteCallback(
  [in, optional] PVOID Context
)
{...}

Paramètres

[in, optional] Context

Valeur de contexte de la DeleteContext membre de la structure EXT_DELETE_PARAMETERS que votre pilote a précédemment passée en tant que paramètre d’entrée à la routine ExDeleteTimer.

Valeur de retour

Aucun

Remarques

En guise d’option, votre pilote peut fournir un pointeur vers une routine ExTimerDeleteCallback dans la routine DeleteCallback membre de la structure EXT_DELETE_PARAMETERS que votre pilote passe en tant que paramètre d’entrée à la routine ExDeleteTimer. La routine ExTimerDeleteCallback peut libérer n’importe quel stockage ou d’autres ressources système que le pilote a précédemment allouées à utiliser avec l’objet minuteur en cours de suppression.

Si le pilote fournit une routine ExTimerDeleteCallback et que le paramètre Wait dans l’appel ExDeleteRoutine est TRUE, la routine ExTimerDeleteCallback s’exécute avant ExDeleteTimer. Sinon, la routine ExTimerDeleteCallback peut s’exécuter avant ou après l’appel ExDeleteTimer. La routine ExTimerDeleteCallback est appelée uniquement une fois l’objet minuteur désactivé pour empêcher les opérations de minuteur supplémentaires et toute opération de minuteur en attente sur l’objet minuteur est annulée ou terminée. L’objet minuteur (structure EX_TIMER) que le pilote passe en tant que paramètre d’entrée à la routine ExDeleteTimer peut ne plus être valide au moment où la routine ExTimerDeleteCallback s’exécute.

Pour plus d’informations, consultez Routines ExXxxTimer et EX_TIMER Objects.

Exemples

Pour définir une routine de rappel ExTimerDeleteCallback, vous devez d’abord fournir une déclaration de fonction qui identifie le type de routine de rappel que vous définissez. Windows fournit un ensemble de types de fonctions de rappel pour les pilotes. La déclaration d’une fonction à l’aide du type de fonction de rappel permet d'Analyse du code pour les pilotes, static Driver Verificationr (SDV) et d’autres outils de vérification recherchent des erreurs, et il est nécessaire d’écrire des pilotes pour le système d’exploitation Windows.

Par exemple, pour définir une routine de rappel ExTimerDeleteCallback nommée MyExTimerDeleteCallback, utilisez le type de fonction EXT_DELETE_CALLBACK, comme illustré dans cet exemple de code :

EXT_DELETE_CALLBACK  MyExTimerDeleteCallback;

Ensuite, implémentez votre routine de rappel comme suit :

_Use_decl_annotations_
VOID
  MyExTimerDeleteCallback(
    PVOID  Context
    )
  {...}

Le type de fonction EXT_DELETE_CALLBACK est défini dans le fichier d’en-tête Wdm.h. Pour identifier plus précisément les erreurs lorsque vous exécutez les outils d’analyse du code, veillez à ajouter l’annotation _Use_decl_annotations_ à votre définition de fonction. L’annotation _Use_decl_annotations_ garantit que les annotations appliquées au type de fonction EXT_DELETE_CALLBACK dans le fichier d’en-tête sont utilisées. Pour plus d’informations sur la configuration requise pour les déclarations de fonction, consultez déclaration de fonctions à l’aide de types de rôles de fonction pour les pilotes WDM. Pour plus d’informations sur _Use_decl_annotations_, consultez annoter le comportement de la fonction.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.1.
plateforme cible Bureau
d’en-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL Appelé à DISPATCH_LEVEL.

Voir aussi

EXT_DELETE_PARAMETERS

EX_TIMER

ExDeleteTimer