【发布时间】:2011-09-20 14:06:21
【问题描述】:
我已经问过如何从 64 位进程 here 枚举 32 位进程模块。答案是EnumProcessModulesEx。在 Windows 7 x64 上一切正常,但 Windows XP x64 呢? Vista 及更高版本似乎支持此 api。那么在那里有什么方法呢?
【问题讨论】:
我已经问过如何从 64 位进程 here 枚举 32 位进程模块。答案是EnumProcessModulesEx。在 Windows 7 x64 上一切正常,但 Windows XP x64 呢? Vista 及更高版本似乎支持此 api。那么在那里有什么方法呢?
【问题讨论】:
大概是这样的。写在记事本里,所以可能是错误的。但你明白了。
HANDLE hSnapshot = CreateToolhelp32Snapshot( TH32CS_SNAPMODULE, dwPID );
MODULEENTRY32 me32 = {0};
me32.dwSize = sizeof(MODULEENTRY32);
Module32First( hSnapshot, &me32 );
do {
...
} while( Module32Next( hSnapshot, &me32 ) );
CloseHandle( hSnapshot );
【讨论】:
CreateToolHelp32Snapshot 会做到的。
【讨论】: