`

GDI+中发生一般性错误的解决办法

    博客分类:
  • C#
c# 
阅读更多
这个错误经常发生,代码如下:
private  static  byte[] GetBytes (Image image)  
     {  
         try  
         {  
             if (image == null) return null;  
             using (MemoryStream stream = new MemoryStream())  
                 {  
                     image .Save(stream, ImageFormat.Jpeg);  
                     return stream.GetBuffer();  
                 }  
         }  
         finally  
         {  
             if(image != null)  
             {  
                 image.Dispose();  
                 image = null;  
             }  
         }  
     }  


修改后的代码如下:
private  static  byte[] GetBytes (Image image)  
     {  
         try  
         {  
             if (image == null) return null;  
             using(Bitmap bitmap = new Bitmap(image))  
             {  
                 using (MemoryStream stream = new MemoryStream())  
                 {  
                     bitmap.Save(stream, ImageFormat.Jpeg);  
                     return stream.GetBuffer();  
                 }  
             }  
         }  
         finally  
         {  
             if(image != null)  
             {  
                 image.Dispose();  
                 image = null;  
            }  
         }  
     }  


转自:http://blog.csdn.net/chenlycly/article/details/42560127
另可参考:https://www.cnblogs.com/moy-1313133/p/6734393.html
分享到:
评论

相关推荐

    GDI+中发生一般性错误

    ### GDI+中发生一般性错误的理解与处理 #### GDI+简介 GDI+(Graphics Device Interface Plus)是微软为Windows平台开发的一套绘图应用程序接口,它提供了丰富的图形和图像处理功能,如绘制线条、形状、图像,以及...

    摄像头,拍照,缩放,裁剪,显示过程中发生的错误解决办法

    GDI+ 中发生一般性错误 或 **进程占用...的错误,以下是改进办法 (1)改为流的模式 (2)显示别读取裁剪后的文件,而直接用了个Image的子类对象Bitmap就OK了, 希望对大家有帮助 本经验从CSDN上没直接查出答案, 但找到了...

    超级有影响力霸气的Java面试题大全文档

    多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗?  基本数据类型包括byte、int、char、long、float、double、boolean和short。  java....

    华为编程开发规范与案例

    上面的问题解决起来很容易,只需在第一行代码中增加一个判断条件即可,如下:  for(i=0; i<pSysHead->dbf_coun && i ; i++) // MAX_DB_NUM=127 这样就保证了循环变量i的值在正常范围内,从而避免了对指针pDBFat...

    java 面试题 总结

    多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 2、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang....

    C++MFC教程

    这样做的目的主要是增加对语言的熟悉程度,同时也训练自己的思维和熟悉一些在编程中常犯的错误。更重要的是理解并能运用C++的各种特性,这些在以后的开发中都会有很大的帮助,特别是利用MFC进行开发的朋友对C++一定...

Global site tag (gtag.js) - Google Analytics