本帖最后由 z761003 于 2012-2-29 09:06 编辑
请高手帮忙看一下,以下是一段将BMP图片转为JPG格式的图片,当转好后,程序没退出时,我想删除这个BMP,可发现这个BMP 是被打开的,无法删掉,请问如何才能在不退出程序的前提下让这个BMP可以删除#include <GDIPlus.au3>
$TParam = _GDIPlus_ParamInit(1);初始化编码器的参数列表
$Datas = DllStructCreate("int Quality")
DllStructSetData($Datas, "Quality", 50);创建 C/C++ 数据结构供 DllCall 使用
_GDIPlus_ParamAdd($TParam, $GDIP_EPGQUALITY, 1, $GDIP_EPTLONG, DllStructGetPtr($Datas));添加值到编码器参数列表
$Param = DllStructGetPtr($TParam);返回数据结构的一个元素
If IsDllStruct($Param) Then $Param = DllStructGetPtr($TParam)
_GDIPlus_Startup()
$image = _GDIPlus_ImageLoadFromFile("c:\1.BMP");创建基于文件的图像对象
$clsid = _GDIPlus_EncodersGetCLSID("JPG");返回指定图像文件类型的编码器 CLSID
_GDIPlus_ImageSaveToFileEx($image, "c:\1.JPG", $clsid,$Param);将图像保存到文件
_GDIPlus_Shutdown();清理微软 Windows GDI+ 使用的资源
FileDelete ("c:\1.BMP")
Sleep(10000)
|