Fonction MmIsDriverVerifying (wdm.h)

La routine MmIsDriverVerifying indique si le pilote en mode noyau identifié par l’objet pilote spécifié est en cours de vérification ou appelle un pilote en cours de vérification par le vérificateur de pilote.

Syntaxe

LOGICAL MmIsDriverVerifying(
  [in] _DRIVER_OBJECT *DriverObject
);

Paramètres

[in] DriverObject

Pointeur vers une structure DRIVER_OBJECT qui représente un objet pilote. Le pilote reçoit ce pointeur en tant que paramètre d’entrée pour sa routine DriverEntry .

Valeur retournée

MmIsDriverVerifying retourne TRUE si le pilote spécifié figure dans la liste de vérification des pilotes ou importe les appels aux points d’entrée d’un pilote qui se trouve dans la liste de vérification du pilote. Sinon, cette routine retourne FALSE.

Remarques

Un pilote en mode noyau peut appeler cette routine pour déterminer si elle est supervisée par driver Verifier. Le vérificateur de pilotes surveille les pilotes en mode noyau pour détecter les appels de fonction ou les actions non conformes susceptibles d’endommager le système. Pour sélectionner les pilotes à vérifier, vous pouvez utiliser la ligne de commande du vérificateur ou le Gestionnaire du vérificateur de pilotes. Pour plus d’informations sur l’ajout de pilotes à la liste de vérification des pilotes, consultez Sélection des pilotes à vérifier.

Une routine similaire, MmIsDriverVerifyingByAddress, indique si un pilote identifié par une adresse d’image de pilote est en cours de vérification ou appelle un pilote en cours de vérification. MmIsDriverVerifyingByAddress est disponible à partir de Windows Vista.

Une autre routine associée, MmIsDriverSuspectForVerifier, indique si un pilote représenté par un objet de pilote figure dans la liste des pilotes sélectionnés pour être vérifiés. MmIsDriverSuspectForVerifier est disponible à partir de Windows 8.

Par exemple, si le pilote A a une table d’importation par le biais de laquelle il appelle un ou plusieurs points d’entrée dans le pilote B et que le pilote B figure dans la liste de vérification du pilote, MmIsDriverVerifying(A) retourne TRUE et MmIsDriverSuspectForVerifier(B)retourne TRUE. Si le pilote A ne figure pas dans la liste de vérification des pilotes, MmIsDriverSuspectForVerifier(A) retourne FALSE. Même si le pilote B n’appelle pas de points d’entrée dans les pilotes figurant dans la liste de vérification des pilotes, retourne TRUE, MmIsDriverVerifying(B) car le pilote B figure dans la liste de vérification des pilotes. Si un pilote C ne figure pas dans la liste de vérification des pilotes et n’appelle pas de points d’entrée dans les pilotes figurant dans la liste de vérification des pilotes, MmIsDriverVerifying(C) et MmIsDriverSuspectForVerifier(C) les deux retournent FALSE.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows 2000.
Plateforme cible Universal
En-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Voir aussi

DRIVER_OBJECT

DriverEntry

MmIsDriverVerifyingByAddress