对单机游戏做HOOK时要到了问题
木黑神 2019-10-06 08:51:55 WIN32。
软件启动设置一个计时器,
在计时器里面。放所有功能函数。
全局
Bool hook = True.
窗口过程。
case:wm-create:
settimer.
retuen 0.
case:wm-timer:
{
yxhwnd=findwindow.
if(yxhwnd)
{
if(hook)
{
setwindowshook.//创建HOOK
hook= false.
}
if(youxijinru) //游戏进入对局
{
所有功能函数。
}
}
else
{
hook=false.
Unhook//删除HOOK。
}
retuen 0.
}
DLL里面。
只对游戏下键盘钩子。
只截取F1-F12消息。
软件打开,F1-F12,都可以用。
等游戏玩一会了,F1-F12,按就没反应了。
我对设置HOOK,和删除HOOK,那里下断点。
启动时设置HOOK那里断下,HOOK成功。
游戏里面按F1-F12管用了。
玩一会游戏。
再按游戏里面F1-F12就不管用,
UnHook那里并没有断下来,
说明HOOK没有结束。
但是为什么又不管用了呢。
求大神指点。