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


Функция 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 не вызывает точки входа в драйверах, которые находятся в списке проверки драйверов, возвращает значение TRUE, MmIsDriverVerifyingByAddress(Badr) так как драйвер B находится в списке проверки драйвера. Если драйвер C отсутствует в списке проверки драйвера и не вызывает точки входа в драйверах, которые находятся в списке проверки драйверов, MmIsDriverVerifyingByAddress(Cadr) оба MmIsDriverSuspectForVerifier(Cobj) возвращают значение FALSE.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows Vista.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL

См. также раздел

MmIsDriverSuspectForVerifier

MmIsDriverVerifying