detour修改程序之后程序崩溃

cobra_chen 2012-11-06 04:26:49
使用detour修改了函数CreateMutex,有些程序没有错误,但是有些程序就崩溃了。用自带的例子中Sleep的那种形式做的。
detour是注入还是钩子?
网上说获得函数名,然后用jump跳转5,这个5怎么得到的?
...全文
180 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangpeng2011314 2012-11-07
  • 打赏
  • 举报
回复
可能跟你修改的这个函数有关,这个CreateMutex是一个创建一个内核对象的函数。 百度百科里的解释: 一旦不再需要,注意必须用CloseHandle函数将互斥体句柄关闭。从属于它的所有句柄都被关闭后,就会删除对象   进程中止前,一定要释放互斥体,如不慎未采取这个措施,就会将这个互斥体标记为废弃,并自动释放所有权。共享这个互斥体的其他应用程序也许仍然能够用它,但会接收到一个废弃状态信息,指出上一个所有进程未能正常关闭。这种状况是否会造成影响取决于涉及到的具体应用程序
cobra_chen 2012-11-07
  • 打赏
  • 举报
回复
detour不是只修改window api么? 为什么会导致部分程序崩溃呢?
引用 3 楼 wangpeng2011314 的回复:
detours可以做到写一个dll来HOOK,也可以实现将这个dll注入exe
wangpeng2011314 2012-11-07
  • 打赏
  • 举报
回复
detours可以做到写一个dll来HOOK,也可以实现将这个dll注入exe
cobra_chen 2012-11-07
  • 打赏
  • 举报
回复
两个都detour了。 部分程序会崩溃。 不是我写的程序崩溃了
引用 1 楼 Saleayas 的回复:
detour 既不是注入也不是钩子,是旁路了函数,就像她的名字所表示的。 跨进程不是她做的,也不是她支持的。 CreateXXXA和CreateXXXW
Saleayas 2012-11-06
  • 打赏
  • 举报
回复
detour 既不是注入也不是钩子,是旁路了函数,就像她的名字所表示的。 跨进程不是她做的,也不是她支持的。 CreateXXXA和CreateXXXW

64,646

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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