MmIsDriverVerifiedByAddress, fonction (wdm.h)
La routine MmIsDriverVerifiedByAddress vérifie si le pilote en mode noyau identifié par l’adresse d’image spécifiée est vérifié ou appelle un pilote en cours de vérification par vérificateur de pilote.
Syntaxe
LOGICAL MmIsDriverVerifyingByAddress(
[in] PVOID AddressWithinSection
);
Paramètres
[in] AddressWithinSection
Pointeur vers l’adresse virtuelle dans l’image du pilote. MmIsDriverVerifiedByAddress utilise cette adresse pour déterminer le pilote à vérifier.
Valeur de retour
MmIsDriverVerifiedByAddress retourne TRUE si le pilote spécifié se trouve dans la liste de vérification du pilote ou importe les appels aux points d’entrée dans un pilote figurant dans la liste de vérification du pilote. Sinon, cette routine retourne FAUX.
Remarques
Un pilote en mode noyau peut appeler cette routine pour déterminer s’il ou un autre pilote est surveillé par vérificateur de pilotes. Le vérificateur de pilotes surveille les pilotes en mode noyau pour détecter les appels ou actions de fonction non valides susceptibles de endommager le système. Pour sélectionner les pilotes à vérifier, vous pouvez utiliser la ligne de commande vérificateur ou 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 de pilotes à vérifier.
Une routine similaire, MmIsDriverVerifier, indique si un pilote identifié par un objet pilote est vérifié ou appelle un pilote en cours de vérification.
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.
Par exemple, si le pilote A a une table d’importation via 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, MmIsDriverVerifyingByAddress(Aobj)
retourne TRUE et MmIsDriverSuspectForVerifier(Badr)
retourne TRUE, où Aobj
est un pointeur vers l’objet de pilote pour A et Badr
est une adresse dans le pilote B. Si le pilote A n’est pas dans la liste de vérification du pilote, MmIsDriverSuspectForVerifier(Aobj)
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, MmIsDriverVerifyingByAddress(Badr)
retourne TRUE car le pilote B figure dans la liste de vérification du pilote. Si un pilote C n’est 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, MmIsDriverVerifyingByAddress(Cadr)
et MmIsDriverSuspectForVerifier(Cobj)
les deux retournent FALSE.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows Vista. |
plateforme cible | Universel |
d’en-tête | wdm.h (include Wdm.h) |
bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=APC_LEVEL |