近日做了一个程序,GDI+做的相册。
问题是每次打开一组图片后,内存增大一定量。再打开再增大。打开新文件前会cbmp.DeleteObject();cdc.DeleteDC();但是内存不减少。持续增加。在最后再一次手工cbmp.DeleteObject();cdc.DeleteDC();内存不见减少。每次打开一组文件(30~100个)后,程序对应内存增加几十M。如果将窗口最小化,再最大化,内存减少到10M以内。逐张刷新打开的图形文件,内存缓慢上升。
问如何在不最小化窗口的情况下,将内存自动降下来?
希望高手指点。试过SelectObject(old),没有任何效果。
问题是每次打开一组图片后,内存增大一定量。再打开再增大。打开新文件前会cbmp.DeleteObject();cdc.DeleteDC();但是内存不减少。持续增加。在最后再一次手工cbmp.DeleteObject();cdc.DeleteDC();内存不见减少。每次打开一组文件(30~100个)后,程序对应内存增加几十M。如果将窗口最小化,再最大化,内存减少到10M以内。逐张刷新打开的图形文件,内存缓慢上升。
问如何在不最小化窗口的情况下,将内存自动降下来?
希望高手指点。试过SelectObject(old),没有任何效果。
create得到的要delete
整个程序就是
1、用DrawImage绘图,
2、用FillRegion填充
3、用DrawLine画线
4、用了SelectObject(&font)一次,在4行后SelectObject(pOldFont);
5、最多的就是BITBLT了。
没别的了。
结果就楼顶所说。请高手帮帮忙。
检查一下LS说的问题。
这个函数会增加内存用量,函数完成后,内存不会自动减少。请教有何办法让内存减少?