码迷,mamicode.com
首页 > 其他好文 > 详细

Image.Save()发生“GDI+ 中发生一般性错误”

时间:2017-06-10 12:27:28      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:public   network   []   ima   tor   使用   资源   draw   direct   

从数据库中读取的图片是byte[]类型,将其转换成Image可以正常显示,但是调用image.Save()时会发生“GDI+ 中发生一般性错误”。
public static System.Drawing.Image ToImage(byte[]bytes)
{
    System.IO.Stream ms = new System.IO.MemoryStream(bytes);
    System.Drawing.Image image =System.Drawing.Image.FromStream(ms);
    ms.Close();
    image.Save("C:\\1.bmp");//这一句出错
    return Image;
}
怎样解决呢?

 

 

=====================================================================

 

在开发.NET应用中,使用 System.Drawing.Image.Save 方法而导致“GDI+ 中发生一般性错误”的发生,通常有以下三种原因:
1. 相应的帐户没有写权限。
解决方法:赋予 NETWORK SERVICE 帐户以写权限。
2. 指定的物理路径不存在。
解决方法:
在调用 Save 方法之前,先判断目录是否存在,若不存在,则创建。
if (!Directory.Exists(dirpath))
Directory.CreateDirectory(dirpath);
3. 保存的文件已存在并因某种原因被锁定。
解决方法:
重启IIS,解除锁定。并在代码中使用 using 语句,确保释放 Image 对象所使用的所有资源。

 

Image.Save()发生“GDI+ 中发生一般性错误”

标签:public   network   []   ima   tor   使用   资源   draw   direct   

原文地址:http://www.cnblogs.com/soundcode/p/6978119.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!