分类:Debugger
函数:
EnumerateLoadedModules64: 枚举指定进程加载的所有module
EnumerateLoadedModulesEx:貌似和上面的一样…
――――――――下面是代码和注释――――――――――――――――――――
EnumerateLoadedModules64(hProcess,(PENUMLOADED_MODULES_CALLBACK64)MyEnumerateLoadedModulesProc64,(PVOID)pVer);
第二个参数是回调,第3个是回调使用的上下文,pvoid类型的
回调的原型是:
BOOL CALLBACK MyEnumerateLoadedModulesProc64(
PTSTR ModuleName,
DWORD64 ModuleBase,
ULONG ModuleSize,
PVOID UserContext
)
{
这里可以写自己的处理拉。。。
return TRUE;
}
每次枚举一个module便进入一次回调,4个参数也被系统传入。UserContext就是上面设置的pVer。返回t则继续枚举,f就stop枚举了
(PENUMLOADED_MODULES_CALLBACK64)MyEnumerateLoadedModulesProc64要强转一下,否则vc8报错……
有这个函数方便多了,否则还要使用那些first,next函数写一坨代码
相信回调中
PTSTR ModuleName,
DWORD64 ModuleBase,
ULONG ModuleSize,
能得到这3个参数已经差不多够了