Image.FormFile引起的若干问题
1.文件正由另一进程使用,因此该进程无法访问该文件
问题描述:
this.pictureBox1.Image=Image.FormFile(sourceFile);
...
把sourceFile移动到另外一个文件夹
if(this.pictureBox1.Image!=null)
{
this.picutreBox1.Image.Dispose();
}
File.Copy(sourceFile,destinatFile);
File.Delete(sourceFile);
结果时不时的在File.Delete(sourceFile);处抛出异常:文件正由另一进程使用,因此该进程无法访问该文件。
把
File.Copy(sourceFile,destinatFile);
File.Delete(sourceFile);
换成:File.Move(sourceFile,destinatFile);问题依然如故。
问题应该在this.pictureBox1.Image=Image.FormFile(sourceFile);在msdn上Image.FromFile(string)
有这样的描述:在释放 Image 之前,此文件一直保持锁定。
解决办法:
Image img1=Image.FromFile(sourceFile);
Image img2=new Bitmap(img1);
img1.Dispose();
this.pictureBox1.Image=img2;
2.内存不足,或GDI+发生了一般性错误。
问题描述:在Image.FromFile(souceFile)出抛出System.OutOfMemoryException"内存不足"异常。
出现这种问题是由于souceFile文件被破坏,或者是空图片。
可以直接catch掉或在catch中做个标识。另外用
FileInfo fi=new FileInfo(souceFile);
if(fi.Length>0)
{
}
做个判断。
附:http://blog.csdn.net/Haliput/archive/2008/11/20/3339611.aspx,我尝试了该贴的情况
我直接执行Image img=Image.FromFile(Application.StartPath+“\\”+souceFileName);
则不会报异常,
我按照该帖作者的代码执行 :按Ctrl+F5执行,会报出该异常。如果我直接按F5调试执行者不会报该异常。
转载于:https://www.cnblogs.com/shunliy/archive/2009/12/15/1624901.html
Image.FormFile引起的若干问题相关推荐
- 用python下载文件的若干种方法汇总
压缩文件可以直接放到下载器里面下载的 you-get 连接 下载任意文件 重点 用python下载文件的若干种方法汇总 写文章 用python下载文件的若干种方法汇总 zhangqibot发表于Met ...
- oracle查询不走索引全表扫描,使用索引快速全扫描(Index FFS)避免全表扫描的若干场景-Oracle...
使用索引快速全扫描(Index FFS)避免全表扫描的若干场景 什么使用使用Index FFS比FTS好? Oracle 8的Concept手册中介绍: 1. 索引必须包含所有查询中参考到的列. 2. ...
- 急!!!求从字符串中提取形如: div([MC0010000000006],此若干个字符或数字,0) 的正则表达式...
如题, 形如: div([MC0010000000006],此处有若干个字符或数字, 此处只有一个字符) 静坐等待.
- 关于页游垂直同步的若干问题
这个问题要从人眼感觉抖动的原因来分析 第一种情况是常说的屏幕撕裂,就是垂直同 步的事情,可以简单理解为显存的数据更新跟屏幕的绘制刷新缺少同步,一次屏幕刷新的结果可能是多次显存更新的片段集合,这种情况只 ...
- OSPF协议将其管理的网络划分为不同类型的若干区域(Area),其中标准区域特点是(64);存根区域(stub)的特点是(65)。【答案】C B
OSPF协议将其管理的网络划分为不同类型的若干区域(Area),其中标准区域特点是(64):存根区域(stub)的特点是(65). (64)A.不接受本地AS之外的路由信息,也不接受其他区域的路由汇总 ...
- ACNO.15猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。 到第N天早上想再
题目描述 猴子吃桃问题.猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将剩下的桃子吃掉一半,又多吃一个.以后每天早上都吃了前一天剩下的一半零一个.到第N天早上想再吃时,见 ...
- php判断数组不重复的元素,php从数组中随机选择若干不重复元素
php从数组中随机选择若干唯一元素 /* * $array = the array to be filtered * $total = the maximum number of items to r ...
- 4、题目要求:读入N名学生的成绩,将获得某一给定分数的学生人数输出。 * * 输入格式:测试输入包含若干测试用例,每个测试用例的格式为 第1行:N 第2行:N名学生的成绩,相邻两数字用一个
题目: /* 4.题目要求:读入N名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式:测试输入包含若干测试用例,每个测试用例的格式为 第1行:N 第2行:N名学生的成绩,相邻两数字用一 ...
- python使用matplotlib可视化、使用subplots函数将可视化的画布划分为网格状的若干子区、通过nrows和ncols参数设置设置行数和列数
python使用matplotlib可视化.使用subplots函数将可视化的画布划分为网格状的若干子区.通过nrows和ncols参数设置设置行数和列数 目录
- R语言dplyr包将dataframe中的NA值替换(replace)为0实战:所有NA值替换(replace)为0、具体列的NA值替换(replace)为0、若干列的NA值替换(replace)为0
R语言dplyr包将dataframe中的NA值替换(replace)为0实战:所有NA值替换(replace)为0.具体列的NA值替换(replace)为0.若干列的NA值替换(replace)为0 ...
最新文章
- android中有关invisible,visible,gone的区别
- crontab脚本,定时任务相关细节
- 概率统计:第八章:假设检验
- ubuntu deepin等debian系Linux发行版安装docker-ce命令
- PL/SQL Developer中如何格式化SQL
- QT的QAudioProbe类的使用
- Struts1.x的架构一个简图
- MyBatis之快速入门
- Kubernetes-命名空间token(十五)
- android java tga转png_java 里.tga图片怎么用啊,是不是要导入一个包,真的找不到资源,希望来位大神帮帮我 小弟在此拜谢!...
- 通俗易懂!视觉slam第十部分——贝叶斯估计
- spark union 会引起shuffle吗_脑鸣不是耳鸣 会引起听力下降吗?
- hal linux 手册_Linux服务之:haldaemon服务 | 旺旺知识库
- tracert工作原理
- python游戏挂机脚本_python游戏挂机
- 谈谈我对Ui设计师的一些观点
- MEncoder的基础用法—6.5. 编码为MPEG格式
- html2d动画,HTML5之SVG 2D入门11—用户交互性(动画)介绍及应用
- python自动化测试面试题大全带答案_Python自动化测试笔试面试题精选
- 怎样隐藏Android软件盘
热门文章
- Cesium - 地形瓦片(Quantized-mesh)
- 解决SVN Files 的值“xxxxxxx .mine”无效 问题
- SqlServer中检查数据表是否存在
- MySQL 索引最左匹配原则的理解
- 13. Use Objects to manage resources.
- ahb总线协议主机_AMBA总线协议之一文看懂AMBA2 AHB2与AMBA3 AHBLite总线协议的区别
- python股票交易微信提醒_python实现秒杀商品的微信自动提醒功能(代码详解)
- php制作调查问卷,用PHP制作饼图调查表
- Python基础知识笔记(一)
- 设置linux中docker中的mysql开机自动启动