opc*_*0de 2 winapi virtual-memory
我使用VirtualQuery迭代我的进程内存,我想知道一定的内存范围是由谁拥有的.可执行文件或者其他一些dll,并获取它的名称.
有没有办法可以找到答案?
是的,Windows中的模块句柄值只是模块的VM分配的基址.
因此,您可以将MEMORY_BASIC_INFORMATION.AllocationBase转换为(HMODULE)并将其传递给GetModuleFileName().当然,请记住,这仅适用于为从可执行文件加载的代码进行的分配.您通常会遇到许多使用VirtualQuery()的VM分配,这些分配是数据或堆栈.他们没有所有者,也没有与模块相关联.