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


Функция MmIsDriverVerifyingByAddress (wdm.h)

mmIsDriverVerifyingByAddress подпрограммы проверяет, проверяет ли драйвер режима ядра, который определяется указанным адресом образа, или вызывает драйвер, который проверяется средство проверки драйверов.

Синтаксис

LOGICAL MmIsDriverVerifyingByAddress(
  [in] PVOID AddressWithinSection
);

Параметры

[in] AddressWithinSection

Указатель на виртуальный адрес в образе драйвера. mmIsDriverVerifyingByAddress использует этот адрес для определения проверяемого драйвера.

Возвращаемое значение

MmIsDriverVerifyingByAddress возвращает TRUE, если указанный драйвер находится в списке проверки драйвера или импортирует вызовы к точкам входа в драйвере, который находится в списке проверки драйвера. В противном случае эта подпрограмма возвращает FALSE.

Замечания

Драйвер в режиме ядра может вызвать эту подпрограмму, чтобы определить, отслеживается ли он или другой драйвер с помощью средства проверки драйверов. Средство проверки драйверов отслеживает драйверы в режиме ядра, чтобы обнаружить незаконные вызовы функций или действия, которые могут повредить систему. Чтобы выбрать драйверы для проверки, можно использовать командной строки проверяющего или диспетчера проверки драйверов. Дополнительные сведения о добавлении драйверов в список проверки драйверов см. в разделе Выбор драйверов для проверки.

Аналогичная подпрограмма, MmIsDriverVerifying, указывает, был ли драйвер, идентифицированный объектом драйвера , или вызывает проверяемый драйвер.

Другая связанная подпрограмма MmIsDriverSuspectForVerifier, указывает, находится ли драйвер, представленный объектом драйвера, в списке выбранных драйверов.

Например, если драйвер A имеет таблицу импорта, через которую он вызывает одну или несколько точек входа в драйвере B, а драйвер B находится в списке проверки драйвера, то MmIsDriverVerifyingByAddress(Aobj) возвращает TRUE и MmIsDriverSuspectForVerifier(Badr) возвращает TRUE, где Aobj является указателем на объект драйвера для A и Badr является адресом в драйвере B. Если драйвер A отсутствует в списке проверки драйвера, MmIsDriverSuspectForVerifier(Aobj) возвращает FALSE. Даже если драйвер B не вызывает точки входа в каких-либо драйверах, которые находятся в списке проверки драйвера, MmIsDriverVerifyingByAddress(Badr) возвращает TRUE, так как драйвер B находится в списке проверки драйвера. Если драйвер C отсутствует в списке проверки драйвера и не вызывает точки входа в каких-либо драйверах, которые находятся в списке проверки драйвера, MmIsDriverVerifyingByAddress(Cadr) и MmIsDriverSuspectForVerifier(Cobj) возвращаются FALSE.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows Vista.
целевая платформа Всеобщий
заголовка wdm.h (include Wdm.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL

См. также

MmIsDriverSuspectForVerifier

MmIsDriverVerifying