2
我正在使用VirtualQuery來通過我的應用程序的虛擬空間。但我想識別應用程序分配的所有內容,而不僅僅是我的exe文件 - 像SysInternals的VMmap應用程序 - 我需要知道哪些頁面屬於哪個文件(我需要識別爲我的應用程序和dll分配的頁面)。如何實現這一目標?使用VirtualQuery來找出哪個「文件」使用內存中的某個頁面
我正在使用VirtualQuery來通過我的應用程序的虛擬空間。但我想識別應用程序分配的所有內容,而不僅僅是我的exe文件 - 像SysInternals的VMmap應用程序 - 我需要知道哪些頁面屬於哪個文件(我需要識別爲我的應用程序和dll分配的頁面)。如何實現這一目標?使用VirtualQuery來找出哪個「文件」使用內存中的某個頁面
您可以使用帶有TH32CS_SNAPMODULE的CreateToolhelp32Snapshot檢索模塊基址和大小。對於堆,您可以使用GetProcessHeaps()和HeapWalk()來獲得不同的堆區(提交和保留)。
其他東西(線程堆棧,映射內存)似乎很難檢索。