易语言 求取进程模块地址的方法.
例如这种地址:work.exe+rundll32.dll这种地址,用易语言如何取得啊,感谢大神们....
例如这种地址:work.exe+rundll32.dll
这种地址,用易语言如何取得啊,感谢大神们. 展开
这种地址,用易语言如何取得啊,感谢大神们. 展开
2个回答
展开全部
用这个 给你发个源码~
.版本 2
.子程序 GetModule, 整数型, , 返回指定进程中指定模块的模块地址
.参数 ProcessID, 整数型
.参数 模块名称, 文本型
.局部变量 hObject, 整数型
.局部变量 ModuleEntry32, 模块地址_
.局部变量 Module, 模块地址_
' 清除数组 (Module)
hObject = API_CreateToolhelp32Snapshot (8, ProcessID) ' 若id为0表示当前进程
ModuleEntry32.结构大小 = 1024
.如果真 (寻找第一个32位模块_ (hObject, ModuleEntry32))
.循环判断首 ()
.如果真 (到小写 (到文本 (ModuleEntry32.模块名称)) = 到小写 (模块名称))
API_CloseHandle (hObject)
返回 (ModuleEntry32.模块句柄)
.如果真结束
.循环判断尾 (寻找下一个32位模块_ (hObject, ModuleEntry32))
.如果真结束
API_CloseHandle (hObject)
' 调试输出 (Module)
返回 (0)
你粘贴之后直接调用“GetModule”就可以取得了
.版本 2
.子程序 GetModule, 整数型, , 返回指定进程中指定模块的模块地址
.参数 ProcessID, 整数型
.参数 模块名称, 文本型
.局部变量 hObject, 整数型
.局部变量 ModuleEntry32, 模块地址_
.局部变量 Module, 模块地址_
' 清除数组 (Module)
hObject = API_CreateToolhelp32Snapshot (8, ProcessID) ' 若id为0表示当前进程
ModuleEntry32.结构大小 = 1024
.如果真 (寻找第一个32位模块_ (hObject, ModuleEntry32))
.循环判断首 ()
.如果真 (到小写 (到文本 (ModuleEntry32.模块名称)) = 到小写 (模块名称))
API_CloseHandle (hObject)
返回 (ModuleEntry32.模块句柄)
.如果真结束
.循环判断尾 (寻找下一个32位模块_ (hObject, ModuleEntry32))
.如果真结束
API_CloseHandle (hObject)
' 调试输出 (Module)
返回 (0)
你粘贴之后直接调用“GetModule”就可以取得了
追问
大哥,能把DLL和自定义这些一并给兄弟么,或者是.e文件也可以啊,光这样很难琢磨额,兄弟我小白一枚.
可以加分,如果调试OK,你说要多少都行,只要别太过了就是.ps:能获得xxx.exe+xxx.ax之类的地址么?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询