博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VirtualProtect、VirtualLock、VirtualUnlock
阅读量:4682 次
发布时间:2019-06-09

本文共 642 字,大约阅读时间需要 2 分钟。

转:

VirtualProtect改变指定虚拟内存分页的保护属性,函数原型如下:

BOOL VirtualProtect(

    LPVOID lpAddress,

    SIZE_T  dwSize,

    DWORD flNewProtect,

    PDWORD lpflOldProtect);

参数:

lpAddress: 输入参数,虚拟内存基地址。

dwSize: 输入参数,内存大小。

flNewProtect: 输入参数,需要设置的新的属性,具体为PAGE_READONLY、PAGE_EXECUTE、PAGE_EXECUTE_READ、PAGE_GUARD、PAGE_NOACCESS和PAGE_NOCACHE。

lpflOldProtect: 输出参数,指向保存原保护属性值的DWORD变量,可以为NULL。

返回值:

返回BOOL值,表示是否成功,可以使用GetLastError函数获取错误代码。

VirtualLock(

    LPVOID lpAddress,

    SIZE_T dwSize);

VirtualUnlock(

    LPVOID lpAddress,

    SIZE_T dwSize);

将页面锁定在物理内存中使用VirtualLock函数。这样页面将不会被交换到硬盘上,提高了访问的效率,如果要解除它,可以使用VirtualUnLock。

转载于:https://www.cnblogs.com/Clingingboy/archive/2013/03/07/2947891.html

你可能感兴趣的文章
简单数论(一)
查看>>
Populating Next Right Pointers in Each Node
查看>>
CXF和Axis的比较【转】
查看>>
设计一个函数,它接受不定数量的参数,这是参数都是函数。这些函数都接受一个回调函数作为参数,按照回调函数被调用的顺序返回函数名...
查看>>
Android 轮播
查看>>
GCD介绍(三): Dispatch Sources
查看>>
Mysql 导入导出备份
查看>>
CSS绘制星星评分实现分析
查看>>
LA 3890 Most Distant Point from the Sea(半平面交)
查看>>
CF822C Hacker, pack your bags!(思维)
查看>>
软件工程第一次作业补充
查看>>
OBJECTIVE-C入门(2) 类的声明和定义
查看>>
WebTester | 本地网站调试工具
查看>>
【转】Unity ZTest 深度测试 & ZWrite 深度写入
查看>>
命令行查看数据库
查看>>
《你必须知道的495个C语言问题》知识笔记及补充
查看>>
[转]Jackson 解析json数据之忽略解析字段注解@JsonIgnoreProperties
查看>>
Android入门系列:UI组件:布局管理器:GridLayout
查看>>
白盒测试实践--Day3 12/19/2017
查看>>
写驱动的步骤
查看>>