16,472
社区成员
发帖
与我相关
我的任务
分享
DWORD GetMaxMemoryBlock()
{
DWORD maxBlock = 0;
PBYTE p = NULL;
while (true)
{
MEMORY_BASIC_INFORMATION mbi;
if (VirtualQuery(p, &mbi, sizeof(mbi)) == 0) break;
p = (PBYTE)mbi.BaseAddress + mbi.RegionSize;
if (mbi.AllocationBase != NULL) continue;
if (mbi.RegionSize > maxBlock) maxBlock = (DWORD)mbi.RegionSize;
}
return maxBlock;
}