在s60上如何使用hooklogger

       在一些论坛上总是看到这样的帖子:我的程序运行到什么什么状态后突然退出了;我的程序无法启动;我的程序有内存泄漏问题等等。实际上诸如这样的问题都可以通过hooklogger获得很多有用的信息。在这里再一次由衷地赞美一下hooklogger,非常好的debug工具,哈!

以前我写过一篇关于如何使用hookbloggerblog(参见 HookLoggerUIQ上的使用方法)。尽管那是在UIQ上面的用法,不过对于在S60上的使用还是有参考价值的。

我现在使用的hooklogger的版本是0.42。在这个版本上,hookeuser命令被SetupHooks代替,强烈推介使用setuphooks命令!

使用Hooklogger的过程还是三步:

1、  在环境中安装hook(注意不是安装hooklogger这个程序)

2、  使用hooklogger.exe,查看信息

3、  从环境中卸载掉hook,恢复成普通状态

这三步是前后依赖的关系,并不是每次都需要执行这三步。第一步是通过setuphooks完成的,只是在环境中安装hook,第二步才是使hook工作的步骤。因此只要你的环境不变,只需要安装一次就可以了,可以一直不用卸载,因为hooklogger.exe不运行的话,hook对环境没有影响。

我们先来了解一下setuphooks命令。在cmd中通过cd命令来到hooklogger的安装路径下,然后输入setuphooks –h打印出来hooklogger的帮助信息如下,注释是我加的。

、通过setuphooks命令在环境中安装hook

 

 

 

运行命令setuphooks epocroot,如果成功的话就会有如下的提示信息:

 

  1. Setting up hooks in "/epoc32/release/winscw/udeb"
  2.         1 file(s) copied.
  3. Setup euser.dll to load EUserParasite_EKA2.dll, original preserved as euser.orig.dll.
  4. Run SetupHooks with --r to restore it

 

如果

hook 已经被安装,就会有如下的错误提示信息:

 

 

 

  1. Setting up hooks in "/epoc32/release/winscw/udeb"
  2. "euser.orig.dll" is present - it appears that hooks have already been set up on this SDK? at C:/pf/HookLogger/SetupHooks.cmd l
  3. ine 88.

 

      

、使用hooklogger捕捉信息
2

 

 

 

 

       cmd中运行命令hooklogger。如果此时出现下图所示提示,我们需要关掉模拟器,然后重新运行。

    应用程序Hooklogger.exe被运行,如下图所示。如果hook模拟器不成功的话,在hooklogger的标题中会显示“not connected”这样的字符串。

 

    一般情况下我们不需要更改缺省配置,它足够用了。唯一需要关注的就是图中红色圈圈住的部分。这里mointor的意思是对应的事件只显示在相应的tag中,比如选在了Leaves,如果发生了leave,就可以在Leaves那一个tag(图中蓝色的部分)中看到信息。Log的意思是不仅tag中显示信息,还要将信息写到log文件中。

我认为大家只需要知道上面这些就够了。

不论是在debug状态还是普通状态运行模拟器,如果hook成功的话hooklogger的标题就会变成下图所示

 

记住先运行hooklogger,然后运行模拟器。

然后就可以享受hooklogger带来的便利了。:)

       3、卸载hook,恢复环境。

运行命令setuphooks epocroot --r 注意是两个“-”。运行成功的提示信息如下:

  1. Setting up hooks in "/epoc32/release/winscw/udeb"
  2. Restored euser.dll from euser.orig.dll; hooks no longer in place

如果已经卸载,提示如下:

 

 

 

 

 

  1. Setting up hooks in "/epoc32/release/winscw/udeb"
  2. Can't find "euser.orig.dll" - hooks don't appear to be set up on this SDK? at C:/pf/HookLogger/SetupHooks.cmd line 81.

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值