Функция MmProbeAndLockSelectedPages (wdm.h)
MmProbeAndLockSelectedPages подпрограммы проверяет выбранные страницы виртуальной памяти, делает их резидентными и блокирует их в памяти.
Синтаксис
void MmProbeAndLockSelectedPages(
[in, out] PMDL MemoryDescriptorList,
[in] PFILE_SEGMENT_ELEMENT SegmentArray,
[in] KPROCESSOR_MODE AccessMode,
[in] LOCK_OPERATION Operation
);
Параметры
[in, out] MemoryDescriptorList
Указатель на список дескрипторов памяти (MDL), указывающий буфер виртуальной памяти. Если подпрограмма успешно блокирует страницы в памяти, MDL обновляется, чтобы описать базовые физические страницы.
[in] SegmentArray
Указатель на массив сегментов буфера, содержащих страницы виртуальной памяти.
[in] AccessMode
Указывает режим доступа, в котором выполняется проверка аргументов, ядроMode или UserMode.
[in] Operation
Указывает тип операции, для которой вызывающий требует проверки прав доступа и заблокированных страниц. Задайте для этого параметра значение IoReadAccess, IoWriteAccess или IoModifyAccess. IoReadAccess указывает, что драйвер может проверить содержимое буфера, но не может изменить содержимое. IoWriteAccess и IoModifyAccess, которые эквивалентны, указывают, что драйвер имеет доступ на чтение и запись к буферу.
Возвращаемое значение
Никакой
Замечания
Вызовы MmProbeAndLockSelectedPages должны быть заключены в блок try/за исключением. Если страницы не поддерживают указанную операцию, подпрограмма вызывает STATUS_ACCESS_VIOLATION или другие исключения. Дополнительные сведения см. в обработке исключений.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 2000. |
целевая платформа | Всеобщий |
заголовка | wdm.h |
IRQL | <= APC_LEVEL |