Win API VirtualQueryEx函数,ERROR_BAD_LENGTH

时间:2009-12-28 23:26:56

标签: c++ winapi virtualquery

您好我尝试调用VirtualQueryEx函数来获取有关内存保护的一些信息,但是我的代码给了我错误0x18(ERROR_BAD_LENGTH),我不知道我的代码有什么问题;

代码段:

PMEMORY_BASIC_INFORMATION alte;

VirtualQueryEx(processhandle,(LPVOID)(地址),alte,sizeof(PMEMORY_BASIC_INFORMATION));

感谢您的帮助

1 个答案:

答案 0 :(得分:4)

通过声明MEMORY_BASIC_INFORMATION而不是指向一个的指针来替换。

MEMORY_BASIC_INFORMATION alte;

VirtualQueryEx(processhandle,(LPVOID) (address),&alte,sizeof(MEMORY_BASIC_INFORMATION));

编辑:注意它的sizeof(MEMORY_BASIC_INFORMATION)不是sizeof(PMEMORY_BASIC_INFORMATION)。

实际上,最好还是写这个

VirtualQueryEx(processhandle,(LPVOID) (address),&alte,sizeof(alte));