首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

VirtualProtect的size参数似乎不起作用,该如何解决

2012-03-09 
VirtualProtect的size参数似乎不起作用我写了一小段代码,先VirtualAlloc分配内存然后VirtualProtect修改第

VirtualProtect的size参数似乎不起作用
我写了一小段代码,先VirtualAlloc分配内存然后VirtualProtect修改第一个字节的属性为只读。然后修改某个字节。
运行时报unhandled exception。代码如下

C/C++ code
    void* pMem=VirtualAlloc(NULL,4096,MEM_RESERVE|MEM_COMMIT,PAGE_READWRITE);    char* pC=static_cast<char*>(pMem);    pC[1]=0;    DWORD dw;    VirtualProtect(pMem,1,PAGE_READONLY,&dw);    pC[3]=2;

这是为什么呢?



[解决办法]
最少改变一个页(一般4096字节)的属性

热点排行