windows api一日一練(dbghelp sdk)-003-EnumerateLoadedModules64,EnumerateLoadedModulesEx

叫我英雄就行發表於2009-10-15

分類: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則繼續列舉,fstop列舉了

(PENUMLOADED_MODULES_CALLBACK64)MyEnumerateLoadedModulesProc64要強轉一下,否則vc8報錯……

有這個函式方便多了,否則還要使用那些firstnext函式寫一坨程式碼

相信回撥中

PTSTR ModuleName,

DWORD64 ModuleBase,

ULONG ModuleSize,

能得到這3個引數已經差不多夠了

 

相關文章