郁闷呀,
timeGetTime都可以HOOK,
这个却HOOK不到~解决了给250分~

解决方案 »

  1.   

    WINDOWS不是每个函数都可以HOOK的,这个我记得不行吧
      

  2.   

    当然能哪~
    好象要进RING3,RING0,
    这超过我的能力啦,所以我来请教高手了~
      

  3.   

    不至于吧,这个要ring0?
    winmm.dll
      

  4.   

    这个timeGetTime和GetTickCount好像没什么关系吧。
    timeGetTime - winmm.dll
    GetTickCount - kernel32.dll
      

  5.   

    NowCan能不能HOOK到GetTickCount?
    最好用VC代码,哈哈我是用SetWindowsHookEx设置WH_CBT全局钩子到指定程序后拦截的,
    winmm.dll里的timeGetTime可以拦到,
    但kernel32.dll里的GetTickCount却不行~是不是kernel32.dll里的所有函数都不能用这种方法拦?
    我是要用自己的函数替换它的
      

  6.   

    咳,我只是偶尔路过,这个问题没有研究过。不过我见《Windows核心编程》里的APIHook将GetProcAddress都拦截了。
      

  7.   

    还有
    LoadLibraryA
    LoadLibraryW
    LoadLibraryExA
    LoadLibraryExW
    不过,这个东西我到还真没有练过。
      

  8.   


    golden_alvin(Alvin)提供了这个,
    http://expert.csdn.net/Expert/topic/1115/1115703.xml?temp=.7123834他说改下应该可以拦,
    我看了下它好象是进入RING0级获特权改要的函数的前几个字节,
    加入一个JMP跳到自己的代码段。
    我还看了“变速齿轮研究手记”,他们也是用这个方法,也是用汇编实现的,
    不过VC实现我还是无从下手~唉~今天晚上要睁着眼睛睡觉了~
      

  9.   

    看一看《Windows核心编程》,里面的“挂接API”
      

  10.   

    你使要做变速程序?
    《Windows 核心编程》上专门有一章说 ApiHook 的,我自己写了一个 Hook GetTickCount 和 timeGetTime 的程序, 要的 mail 我。但问题是不能控制任何游戏的速度。[email protected]
      

  11.   

    又是做游戏外挂的?我出来献身说法,APIHOOK太暴力了,它把所有进程都FUCK了。最简单的方法是把游戏拿出来静态分析,找到它调用GetTickCount的机器码,然后做THREAD HOOK把你的DLL执入对方的进程空间里,再动态修改对方的GetTickCount调用的机器码,让它去CALL你的函数。不需要RING0,什么都不要。一个DLL就够了。
      

  12.   

    在codeguru上有"jack"和"hijack“两个hookApi的例子,我hook ExitWindowsEx成功过,别的没工夫去试,但win32 API应该可以大部分HOOK到
      

  13.   

    我就是用JIJACK那个改的,哈哈~