以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何解决gif被占用?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=192886)

--  作者:rogen
--  发布时间:2024/7/30 11:49:00
--  如何解决gif被占用?
按照杰哥的帖子做了一个 遮罩层

运行后发现:
若调用了遮罩层,程序不退出,
用Syscmd.Project.Update()命令在线升级结束后,会报下图的错误,gif图片占用
图片点击可在新窗口打开查看

有啥代码可以解除文件占用不,先解除占用,然后再升级。

--  作者:有点蓝
--  发布时间:2024/7/30 12:05:00
--  
更新前把遮罩层的引用关闭退出释放资源。

或者试试:把这个文件放到项目目录下面,不要放到image里。改代码里的引用路径。第一次发布的时候把这个文件添加到发布窗口的附件里。让客户端全部退出后更新一次。然后把发布窗口附件里去掉这个文件,也就是更新一次后不需要再次更新这个文件了

--  作者:rogen
--  发布时间:2024/7/30 13:34:00
--  
按方法2做了,还是提示占用

图片点击可在新窗口打开查看此主题相关图片如下:pixpin_2024-07-30_13-29-54.jpg
图片点击可在新窗口打开查看

方法1,原帖代码我看不懂,放在记事本了,版主帮忙看下怎么释放图片资源。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:遮罩层代码.txt



--  作者:有点蓝
--  发布时间:2024/7/30 13:41:00
--  
不要使用之前旧的客户端测试,因为本身就已经有问题。

1、把这个文件放到项目目录下面,不要放到image里。改代码里的引用路径。第一次发布的时候把这个文件添加到发布窗口的附件里。
2、把发布的publish目录程序安装到客户端使用
3、然后把发布窗口附件里去掉这个文件,重新发布新版本测试更新

代码这样改改试试
waitFormPic.Image = System.Drawing.Image.FromFile(ProjectPath & "loading.gif") \'设置加载显示的图片
改为
Dim img As image  = getImage(ProjectPath & "loading.gif")
waitFormPic.Image = New bitmap(img)


--  作者:rogen
--  发布时间:2024/7/30 16:37:00
--  
好用了,谢谢!
--  作者:rogen
--  发布时间:2024/7/30 18:20:00
--  
又测试了几次
发现以下操作可以保证升级后不报错,但gif动图不动了
还有其他定义方式能保留动图效果不?

代码这样改改试试
waitFormPic.Image = System.Drawing.Image.FromFile(ProjectPath & "loading.gif") \'设置加载显示的图片
改为
Dim img As image  = getImage(ProjectPath & "loading.gif")
waitFormPic.Image = New bitmap(img)

--  作者:有点蓝
--  发布时间:2024/7/30 20:33:00
--  
这样呢

waitFormPic.Image = getImage(ProjectPath & "loading.gif")

--  作者:rogen
--  发布时间:2024/7/31 7:05:00
--  
可以了,非常感谢!