工具 gflags.exe
C:\Program Files\Debugging Tools for Windows (x64)\gflags.exe
方法一:
输入进程名,按TAB,然后勾上Enable page heap,再确定或者应用即可。然后正常运行程序,在内存越界等异常处,会立即触发异常。
注意不再分析时,去掉Enable page heap然后确定,否则会影响效率。
gflags只是修改的如下注册表位置的值,PageHeap功能是操作系统本身就有的:
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Image File Execution Options/appName.exe
注意:
1、使用gflags命令行来设置也可以,只是命令行disable时,不会删除注册表信息,而GUI来清除时会删除注册表信息。
2、只有命令行支持/unaligned,但/unaligned这个限制太严格了,测试写的普通对话框和控制台程序都无法运行。
3、只能设置进程名,也可以监控到dll里的内存异常。设置dll名没效果。
方法二:
内存泄漏自动分析脚本(见附加资源)
--------- 不想下载的,自己照上图敲 ---------