0
我已經問過如何從64位進程枚舉32位進程模塊here。答案是EnumProcessModulesEx。所有在Windows 7 x64上運行良好,但Windows XP x64又如何?看來這個api在Vista和更高版本上都支持。那麼在那裏做什麼?如何在Windows XP 64位中枚舉另一個進程模塊
我已經問過如何從64位進程枚舉32位進程模塊here。答案是EnumProcessModulesEx。所有在Windows 7 x64上運行良好,但Windows XP x64又如何?看來這個api在Vista和更高版本上都支持。那麼在那裏做什麼?如何在Windows XP 64位中枚舉另一個進程模塊
CreateToolHelp32Snapshot會做到這一點。
可能是這樣的。寫在記事本中,所以可能是錯誤的。但你明白了。
HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwPID);
MODULEENTRY32 me32 = {0};
me32.dwSize = sizeof(MODULEENTRY32);
Module32First(hSnapshot, &me32);
do {
...
} while(Module32Next(hSnapshot, &me32));
CloseHandle(hSnapshot);
看來,如果我的過程是64位,而另一個是32位,它不能正常工作。看到這裏:http://www.masm32.com/board/index.php?PHPSESSID=d214f61d4ffa3a0a9395101e3e913498&topic=9695.0 – blez
所以它看起來像檢查一個64位進程需要調用者也是64位。 –