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


Функция MmIsAddressValid (ntddk.h)

Подпрограмма MmIsAddressValid проверяет, произойдет ли ошибка страницы для операции чтения или записи по заданному виртуальному адресу.

Предупреждение

Мы не рекомендуем использовать эту функцию.

Синтаксис

BOOLEAN MmIsAddressValid(
  [in] PVOID VirtualAddress
);

Параметры

[in] VirtualAddress

Указатель на несмежный виртуальный адрес для проверка. Вызывающий объект должен убедиться, что этот адрес не может быть вычеркнулся или удален на протяжении всего вызова. Даже после возврата из вызова вы не должны удалять этот адрес на страницу. Если этот адрес будет удален, возвращаемое значение может оказаться ненадежным. Разбиение по страницам или удаление этого адреса может привести к тому, что компьютер перестанет отвечать на запросы (т. е. аварийное завершение работы).

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

Если при чтении или записи по заданному виртуальному адресу не произошло ни один сбой страницы, MmIsAddressValid возвращает значение TRUE.

Комментарии

Даже если MmIsAddressValid возвращает значение TRUE, доступ к адресу может привести к сбоям страницы, если память не заблокирована или адрес не является допустимым адресом пула без пачки.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть ntddk.h (включая Ntddk.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=DISPATCH_LEVEL

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

MmProbeAndLockPages