说明你有许多句柄没有释放!
这样句柄打开过多,一是浪费系统内核资源,二是好像Windows对一个进程打开的句柄数量有限制,是多少不知道。
这样句柄打开过多,一是浪费系统内核资源,二是好像Windows对一个进程打开的句柄数量有限制,是多少不知道。
解决方案 »
- VC6如何获取IHTMLStyle3接口?
- VC6.0中MFC封装的音频处理的API
- 怎么样保证recv接收完数据
- d:\图书馆管理\tsltdj\stdafx.cpp(0) : fatal error C1033: cannot open program database c;\tsltdj\debug\vc60.pdb'
- 有人不停的向我公司的IP发大量ICMP包导致我们公司的网络(ADSL)经常断线.有什么解决的方法吗?
- 关于网络控件!!!!!!!!!!!!!在线等!!!
- 在树形控件中如何得到右键单击的某个item的句柄?
- 如何利用IHTMLDocument2获取<object classid=...>***</object>中的数据?
- OpenGL 用gluunproject拾取的坐标都是-9.2559631349317831e+061啊
- 如何从网页中提取时间
- 请教打印高手,帮我解决了,我有250分相送。
- 换行连接符号是哪个?
释放资源的对应API如下:
new -- delete
CreatePatternBrush -- DeleteObject
CreatePen -- DeleteObject
SetWindowsHookEx - UnhookWindowsHookEx
LoadLibrary - FreeLibrary
GlobalAddAtom - GlobalDeleteAtom
SetProp - RemoveProp
在资源不再使用的时候释放就可以了。
可其它几个程序并没有调用,比如LoadLibrary,我的程序里根本找不到,
如何释放?先谢谢了。
这样的泄漏报告我也遇到过,至今不知如何解决 :(我也没有什么好办法,只能在 coding 的时候,仔细仔细再仔细...
我总遇到,是不是TMD MFC搞得鬼!
我用它调试程序时怎么都显示不出来?
程序中用到CRectTracker,在 trckrect.cpp
ln 130 调用了CreatePatternBrush
ln 142 调用了CreatePen
大家如果有兴趣可以看看MFC到底有没有DELETE?
尤其release版的exe可以运行,debug版的exe经常dump,肯定是程序有些问题,
但大海捞针,求助于BoundsCheck,好像都是微软的错?
BoundsCheck时好东西呀!他能保护栈,使他不至于毁坏!
他的报错严格的,但内存漏洞是不能忽视的!
如果MFC的错,唯一办法:不用MFC,纯C++.Win32编程!
如果是你的错,呵呵,大多都是内存没释放引起!
楼上有没有遇到过此类错误,是如何处理的?请明示。先谢过!
我有一个同样的程序, 在vc6中编译, 用BoundsCheck监测就有内存泄漏。
但是, 同样的程序在vc7中编译, 跑出来的就没有任何内存泄漏。不信, 你自己用Wizard生成一个CHtmlView的简单程序。 就有内存泄漏。。
然后, 那着程序到vc7中编译, 生成的程序然后再BoundsChecker里面跑。