hook api 对隐式联接的dll 不起作用

xt_jat 2005-08-25 06:53:56
我用了windows 核心编程中的 hook api 例子, 用setwindowshookex 来注入别的进程, 
可对隐式联接的dll 好象不起作用。 有哪位涉足过这一块的吗,给点建议

我要hook 系统目录下winmm.dll 中的midiOutOpen 函数
...全文
146 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wshcdr 2005-08-28
  • 打赏
  • 举报
回复
学习
  • 打赏
  • 举报
回复
可能时你修改函数入口点的代码有问题
老夏Max 2005-08-27
  • 打赏
  • 举报
回复
应该是可以的,不过是显式链接还是隐式链接,最终DLL都会被映射到进程空间中。只是隐式链接在Exe或者其他的程序被编译的时候会留下响应的信息,如DLL的名字,导出函数,默认的映射地址等等。
DentistryDoctor 2005-08-26
  • 打赏
  • 举报
回复
注入目标进程再Hook?
蒋晟 2005-08-26
  • 打赏
  • 举报
回复
调用DLL里面的函数有两种方法,一种是通过名字,一种是通过序号。
xt_jat 2005-08-25
  • 打赏
  • 举报
回复
楼上的,winmm.dll 是系统的dll 别的程序可以通过loadlibrary来载入 也可以通过在编写程序时在VC的 LINK项里加入winmm.lib来隐式加载这个dll 在这种情况下,我的api hook 好象就hook 不到相应的api了,不知道是怎么回事,郁闷
  • 打赏
  • 举报
回复
hook Dll隐式调用也只是你的启动程序能用,其他进程都是动态load的,要hook 变得进程中的api,首先要通过全局钩子将自己的修改api地址的代码注入到目标进程中,setwindowshookex 只是挂接钩子,将dll加载到其他进程是windows完成的,跟dll的加载方式没有关系

15,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧