MmIsAddressValid 函数 (ntddk.h)

MmIsAddressValid 例程检查给定虚拟地址的读取或写入操作是否会发生页面错误。

警告

不建议使用此函数。

语法

BOOLEAN MmIsAddressValid(
  [in] PVOID VirtualAddress
);

参数

[in] VirtualAddress

指向要检查的非分页虚拟地址的指针。 调用方必须确保此呼叫期间无法分页或删除此地址。 即使在呼叫返回后,也不得分页或删除此地址。 如果进行分页或删除此地址,则返回值可能不可靠。 分页或删除此地址可能会导致计算机停止响应 (即 崩溃) 。

返回值

如果读取或写入给定虚拟地址时不会出现页面错误, 则 MmIsAddressValid 返回 TRUE

注解

即使 MmIsAddressValid 返回 TRUE,访问地址也可能导致页面错误,除非内存已锁定或地址是有效的非分页池地址。

要求

要求
目标平台 通用
标头 ntddk.h (包括 Ntddk.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=DISPATCH_LEVEL

另请参阅

MmProbeAndLockPages