Поделиться через


Функция 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

См. также

DRIVER_OBJECT

DriverEntry

MmIsDriverVerifyingByAddress