APIHOOK的原理是修改目标程序的内存,可是内存代码段不是可读不 可写的吗?

解决方案 »

  1.   

    在进程内用WriteProcessMemory应该没什么问题,我试过拦截TextOutA。
      

  2.   

    有几种方法,一个是修改PE文件引入表,一个是在内存中修改。
    http://www.xiaozhou.net/ReadNews.asp?NewsID=211
      

  3.   

    必须用VirtualProtect函数来改变内存页面的保护属性,然后就可以在内存中的这些部分写入代码了。在改写了地址之后还要把保护属性改回来。在调用VirtualProtect之前还要先知道有关页面的信息,这通过VirtualQuery来实现。你可以在网上查查,有关的资料很多的。我这里有一篇,但是我忘了在哪里下的,如果需要可以和我联系。