我用BCGControlBar库(V5.84)编写了一程序,在调试时没发现有内存泄露,
但在Win98中运行时发现系统资源慢慢减少,运行一段时间后弹出“必需的系统资源无法满足”警告框,哪位同仁有类似体会,能告诉我问题发生的可能原因,感谢不尽!
我认为可能原因所在:
1 Win98操作系统本身的问题
2 BCGControlBar界面库有问题(但Dll如何调试?)
3 因为程序频繁分配和回收内存,我用的是CArray<T *,T *>, new T 后将所的指针
加入该数组,用完后使用T * tmp=...GetAt();delete tmp回收,不知是否有问题?

解决方案 »

  1.   

    检查你的GDI 对象吧,有handle没有release才是,不是一般的memory leak
      

  2.   

    Win98操作系统本身的问题。
    最好用api函数
      

  3.   

    前几位说的没错.我在程序中使用了大量的GDI资源.不过我不解的是我是在
    OnMouseMove中用CClientDC派生CDC对象,然后用了几个CBrush,难道该局部变量在函数完成时不能释放GDI资源吗?
    几位对我帮助很大,我先散分,如果有什么好的建议,我再另开帖散分,多谢各位!