专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VC

VC++托管代码怎么hook 函数

发布时间:2011-06-23 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
VC++托管代码如何hook 函数
本帖最后由 jerry_dqh 于 2013-10-15 19:38:44 编辑
有一个原来的c++工程,我在vs2010中改成/clr编译,编译没有问题,但是我使用原来的hook函数的方法,好像hook不成功。hook的是自己的函数。去掉/clr,hook是成功的。

hook的原理就是修改原函数的代码段,jmp到新的函数地址去。在/clr下,我跟了一下代码,发现无法看到实际的代码段,运行的代码,每个函数是都从0x00000000开始。但是在去掉/clr编译选项情况下,运行的是实际的代码段

请教一下,如何在clr情况下,hook自己的一些函数。目前我搜索了一下,好像有一个easyhook支持.net的hook,但不知道啥原理。
vs2010 clr hook

------解决方案--------------------
还真没这方面的经验。
------解决方案--------------------
你是用/clr 编译hook的win32 dll吗? 
混合代码不能被dll入口函数调用,网上有过用混合代码写dll的文章,我没有尝试过,你可以搜搜看一下。
easyhook  和detours都有用过,easyhook有免费的64bit hook挺好的,至于他的托管hook是怎样做的,没有研究。
建议还是用纯C  C++来写
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: