Функция MmIsDriverVerifying (wdm.h)
Подпрограмма MmIsDriverVerifying указывает, проверяет ли драйвер режима ядра, который определяется указанным объектом драйвера , или вызывает драйвер, который проверяется средства проверки драйвера.
Синтаксис
LOGICAL MmIsDriverVerifying(
[in] _DRIVER_OBJECT *DriverObject
);
Параметры
[in] DriverObject
Указатель на структуру DRIVER_OBJECT, представляющую объект драйвера. Драйвер получает этот указатель в качестве входного параметра к подпрограмме driverEntry DriverEntry.
Возвращаемое значение
MmIsDriverVerifying возвращает TRUE, если указанный драйвер находится в списке проверки драйвера или импортирует вызовы к точкам входа в драйвере, который находится в списке проверки драйвера. В противном случае эта подпрограмма возвращает FALSE.
Замечания
Драйвер в режиме ядра может вызвать эту подпрограмму, чтобы определить, отслеживается ли она средства проверки драйверов. Средство проверки драйверов отслеживает драйверы в режиме ядра, чтобы обнаружить незаконные вызовы функций или действия, которые могут повредить систему. Чтобы выбрать драйверы для проверки, можно использовать командной строки проверяющего или диспетчера проверки драйверов. Дополнительные сведения о добавлении драйверов в список проверки драйверов см. в разделе Выбор драйверов для проверки.
Аналогичная подпрограмма, MmIsDriverVerifyingByAddress, указывает, проверяет ли драйвер, определяемый адресом образа драйвера, или вызывает проверяемый драйвер. mmIsDriverVerifyingByAddress доступна начиная с Windows Vista.
Другая связанная подпрограмма, MmIsDriverSuspectForVerifier, указывает, представлен ли драйвер объектом драйвера в списке драйверов, выбранных для проверки. mmIsDriverSuspectForVerifier доступна начиная с Windows 8.
Например, если драйвер A имеет таблицу импорта, через которую он вызывает одну или несколько точек входа в драйвере B, а драйвер B находится в списке проверки драйвера, то MmIsDriverVerifying(A)
возвращает TRUE и MmIsDriverSuspectForVerifier(B)
возвращает TRUE. Если драйвер A отсутствует в списке проверки драйвера, MmIsDriverSuspectForVerifier(A)
возвращает FALSE. Даже если драйвер B не вызывает точки входа в каких-либо драйверах, которые находятся в списке проверки драйвера, MmIsDriverVerifying(B)
возвращает TRUE, так как драйвер B находится в списке проверки драйвера. Если драйвер C отсутствует в списке проверки драйвера и не вызывает точки входа в каких-либо драйверах, которые находятся в списке проверки драйвера, MmIsDriverVerifying(C)
и MmIsDriverSuspectForVerifier(C)
возвращаются FALSE.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 2000. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |