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

指定用于探测参数的访问模式,即 KernelMode 或 UserMode。

[in] Operation

指定调用方希望探测其访问权限并锁定页面的操作类型。 将此参数设置为 IoReadAccess、IoWriteAccess 或 IoModifyAccess。 IoReadAccess 指示驱动程序可以检查缓冲区的内容,但无法更改内容。 等效的 IoWriteAccess 和 IoModifyAccess 指示驱动程序对缓冲区具有读取和写入访问权限。

返回值

备注

MmProbeAndLockSelectedPages 的 调用必须包含在 try/except 块中。 如果页面不支持指定的操作,则例程将引发STATUS_ACCESS_VIOLATION或其他异常。 有关详细信息,请参阅 处理异常

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h
IRQL <= APC_LEVEL

另请参阅

MmProbeAndLockPages