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


    从数据库中读取的图片是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 对象所使用的所有资源。

  • 相关阅读:
    Activity-fragment-ListView展示
    Android-fragment简介-fragment的简单使用
    Android-LoaderManager异步加载数据库数据
    Android-上下文菜单Menu
    Android-普通菜单Menu
    Android-Git命令行操作
    zabbix安装步骤
    redis安装及简单使用
    ansible安装
    ansible-palybook
  • 原文地址:https://www.cnblogs.com/soundcode/p/6978119.html
Copyright © 2020-2023  润新知