能力值:
( LV2,RANK:10 )
|
-
-
2 楼
MEM_RESERVE 预留的内存是没有物理页的,需要使用VirtualAlloc 再次在这里已预留的内存中申请 MEM_COMMIT属性,就可以使用了。
|
能力值:
( LV4,RANK:40 )
|
-
-
3 楼
麻木的时间
MEM_RESERVE 预留的内存是没有物理页的,需要使用VirtualAlloc 再次在这里已预留的内存中申请 MEM_COMMIT属性,就可以使用了。 您好,我刚去测试了VirtualAlloc MEM_COMMIT,PAGE_READWRITE。 还是失败,错误代码是87。
这是测试代码,在确定state是MEM_RESERVE的情况下,VirtualProtect 和 VirtualAlloc都是同时失败的.. MEMORY_BASIC_INFORMATION info;
VirtualQuery((LPCVOID)nice, &info, sizeof(MEMORY_BASIC_INFORMATION));
sprintf_s(tmpsay, "State:0x%x", info.State);
std::cout << tmpsay << std::endl;
if (!VirtualProtect((LPVOID)nice, 10, PAGE_READWRITE, &old)) {
sprintf_s(tmpsay, "属性更改失败 错误代码:%d", GetLastError());
std::cout << tmpsay << std::endl;
}
add = VirtualAlloc((LPVOID)nice, 10, MEM_COMMIT, PAGE_READWRITE);
if (add == NULL) {
sprintf_s(tmpsay, "申请失败 错误代码:%d", GetLastError());
std::cout << tmpsay << std::endl;
}
最后于 2020-6-18 22:45
被萌克力编辑
,原因:
|
能力值:
( LV4,RANK:40 )
|
-
-
4 楼
顶顶
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
857305819 加Q说
|
能力值:
( LV4,RANK:40 )
|
-
-
6 楼
再顶顶
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
顶顶顶
|
|
|