标题:向各位大佬们求助,急急急,批量转换尺寸时遇到的灾难^-^
只看楼主
lamblu
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-14
得分:0 
回复 3楼 wengjl
非常感谢。
看了下,是个好东东,但这个是单独EXE文件,
我在VFP+SQL里很难用它,先从SQL端下文件至本--缩小尺寸--回传至SQL
2023-02-01 14:26
sam_jiang
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:542
专家分:781
注 册:2021-10-13
得分:2 
编程的时候要养成良好习惯,及时释放内存。
2023-02-01 15:22
lamblu
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-8-14
得分:0 
谢谢大家,找到原因了,过程中释放不到位!还有个图片在内存上
..............
GdipDisposeImage(nImage)
    GdipSaveImageToFile (nBitmap, STRCONV(pNewFileNAme,5) + CHR(0), lcEncoder, 0)
GdipDisposeImage(nBitmap)   &&&&加上这句就可以了
DECLARE INTEGER GdiplusShutdown IN gdiplus INTEGER token
................
2023-02-01 18:04
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:29
帖 子:484
专家分:1827
注 册:2018-3-13
得分:0 
你抄来的这段代码漏洞百出。
1. GdipLoadImageFromFile,GdipCreateBitmapFromScan0,GdipGetImageGraphicsContext 这三个dipls函数只要有一个调用失败就 return .f.,这样一来,前面调用成功所分配的句柄就没有释放,不造成内存泄漏才怪。
2. GdipGetImageGraphicsContext 分配的 nGraphics 句柄也没有用 GdipDeleteGraphics 释放
收到的鲜花
  • sam_jiang2023-02-02 19:05 送鲜花  1朵  
2023-02-01 18:55
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用lamblu在2023-2-1 14:16:58的发言:


吹版应该是你说的“资源分配和释放没处理好”,无从下手啊close data,clear all ....全都搞了遍,
就是无法释放内存空间,估计是进程里,生成图片时占用了内存,没有被释放,用MYFLL也是这个梗。
劳烦帮我们研究下

资源分配和释放通常有一对函数,平时有个良好的习惯:出双入对。
如GDI图像处理常见到的:
GdiplusStartup(@pGDI, @stGSI, 0)
GdiplusShutdown(pGDI)

GdipLoadImageFromFile(STRCONV(cFileName+0h00,5), @pImage)
GdipDisposeImage(pImage)

GdipCreateFromHDC(hDC, @pGraphics)
GdipDeleteGraphics(pGraphics)
   
GdipCreateBitmapFromScan0(nWidth, nHeight, 0, PixelFormat_32bppARGB, 0, @pBitmap)
GdipDisposeImage(pBitmap)

hDC = GetDC(hWnd)
ReleaseDC(hWnd, hDC)

hImageMemory = GlobalAlloc(0x42, nFileSize)
GlobalFree(hImageMemory)
收到的鲜花
  • sam_jiang2023-02-02 19:04 送鲜花  1朵  
2023-02-01 20:46
pvm2000
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:24
帖 子:159
专家分:256
注 册:2022-12-22
得分:0 
回复 15楼 吹水佬
学习了
2023-02-03 01:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511200-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.320296 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved