安装完毕后启动HookLogger的应用程序,这是可以启动模拟器,一般会有一个提示说是你的
HookLogger和模拟器没有Hook上,你就直接点击确定并关闭模拟器(不要急着把HookLogger也关
了)。
设置系统环境变量,新建一个环境变量,名称为epocroot,变量值为/Symbian/9.1/S60_3rd。
重新启动操作系统。
打开Windows的命令控制台(开始菜单中单击运行,输入cmd然后就按下回车),跳转到你所安
装的HookLogger的目录(如默认的 C:\Program Files\HookLogger,这里要在控制台中输入 cd
C:\Program Files\HookLogger然后回车),输入命令SetupHooks,回车;会弹出一些提示信息,接
着输入SetupHooks epocroot, 回车。
在HookLogger的Filters的Tab页面中,左侧的下拉菜单中选择Include only checked,在下面的
Browse for EXE的按钮中选中你要进行调试的那个工程的模拟器对应的exe程序,一般在
C:\Symbian\9.1\s60_3rd\release \winscw\udeb\中,而文件名一般是你的工程名。
设置完毕后启动模拟器,在模拟器中运行你要调试的那个程序,直到退出时爆出 Alloc
********(16位的地址),这时在HookLogger的Heap的Tab,单击第三个按钮(List all alloc),
你会发现该页面中有一列Ptr,在这一列中找到你的那个对应的地址(Alloc中的********),然后
用鼠标选中这一行,单击下面的第四个按钮(Alloc details)这时会弹出一个对话框,找到第一个
有关你的类名及函数名的位置(这里就是根源所在),在#后的数字就是你的内存泄露所在的位置
。
跳到你的源文件中步骤4的位置,找出你的内存泄露出现在哪里,这样你就可以进行下一步调试
了。