`

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平台开发的一套绘图应用程序接口,它提供了丰富的图形和图像处理功能,如绘制线条、形状、图像,以及...

    .net生成缩略图及水印图片时出现GDI+中发生一般性错误解决方法

    这种方法确保了在处理图像时不会锁定文件,从而解决了因资源未释放导致的“GDI+中发生一般性错误”。 接下来,我们可以进一步探讨如何在.NET中生成缩略图和添加水印。生成缩略图通常包括读取原图、计算缩放比例、...

    GDI+开发包 GDI+ SDK

    5. **错误处理**:GDI+使用异常处理来报告错误,所以编写GDI+代码时,需要包裹在try-catch块中,以便捕获和处理可能出现的异常。 6. **性能与兼容性**:GDI+相比原生的GDI,提供了更好的图形质量和更高的性能,同时...

    异常A generic error occurred in GDI+的解决办法

    在使用.NET Framework进行Windows应用程序开发时,可能会遇到一个常见的错误提示:“A generic error occurred in GDI+”。这个异常通常在处理图像、图形或者打印任务时出现,涉及到GDI+(Graphics Device Interface...

    GDI+游戏GDI+游戏GDI+游戏GDI+游戏GDI+游戏GDI+游戏

    通过这个"飞机大战"的例子,我们可以看到GDI+在游戏开发中的实用性,以及如何将其特性有效地应用到实际项目中。尽管现代游戏开发可能更多地转向DirectX或Unity等更强大的工具,但GDI+仍然为初学者提供了一个学习图形...

    GDI++中文帮助

    9. **错误处理**:介绍在使用GDI++时可能遇到的问题以及解决方法。 10. **API参考**:列出GDI++的关键函数和类,包括它们的功能、参数和返回值,方便开发者查阅。 通过阅读这份“GDI++中文帮助.pdf”文档,开发者...

    GDI+开发包 GDI+安装详解

    Visual C++6.0使用GDI+的一般方法 1. 载解压GDI+开发包; 2. 正确设置include & lib 目录; 3. stdafx.h 添加: #ifndef ULONG_PTR #define ULONG_PTR unsigned long* #endif #include 或者 将Visual...

    GDI+ SDK中文API

    GDI+提供了多种错误校验机制,用于检测图形应用程序中的错误。开发者需要了解如何进行错误校验,避免图形应用程序的崩溃。 线程同步: GDI+提供了多种线程同步机制,用于确保图形应用程序的线程安全。开发者需要...

    GDI+教程(C++中文版).pdf

    GDI+的安全考虑包括检验构造函数调用的成功与否、分配缓冲区的注意事项以及错误校验和线程同步等。这是因为在进行图形编程时,如果不注意这些细节,可能会导致内存泄漏、程序崩溃甚至安全漏洞。 关于GDI+的介绍部分...

    GDI+的说明 GDI+的说明 GDI+的说明 GDI+的说明

    总的来说,GDI+是Windows编程中不可或缺的工具,它的出现极大地扩展了开发者在图形处理方面的可能性,使得创建复杂的图形效果变得更加简便。通过理解和掌握GDI+的这些核心概念和技术,开发者能够构建出更加精美、...

    GDI+程序设计_GDI+程序设计_

    GDI+(Graphics Device Interface Plus)是Windows操作系统中用于图形绘制和图像处理的一套API,它是GDI(Graphics Device Interface)的升级版本,为开发者提供了更强大、更灵活的图形处理能力。本书“GDI+程序设计...

    GDI+程序设计 GDI+程序设计 GDI+程序设计 GDI+程序设计

    GDI+(Graphics Device Interface Plus)是微软Windows操作系统中用于图形设备接口的增强版本,它为开发者提供了一套丰富的绘图工具,使得在Windows应用程序中创建、管理和显示图形变得更加便捷和高效。GDI+不仅继承...

    VB6 GDI+入门教程(最新版)

    2. **初始化GDI+**:在VB6中使用GDI+之前,必须对GDI+进行初始化,这通常通过调用`GdipStartup`函数来完成。初始化完成后,可以开始使用GDI+的各种功能。 3. **创建Graphics对象**:Graphics对象是GDI+的核心,...

    gdi+ 帮助文档

    GDI+开发的帮助文档,讲得清晰浅显,而且是中文的.如果学习GDI+开发的话,特别是初学者,强烈推荐下载. 对于初学者,还有一个问题就是,如果想要进行GDI+开发, 需要下载一个GDI+的开发包(SDK). 网上搜到的一般只包含一个...

    GDI+图形程序设计.zip

    GDI+(Graphics Device Interface Plus)是Windows操作系统中用于图形绘制和图像处理的一个强大的API,它是GDI(Graphics Device Interface)的升级版本。GDI+提供了丰富的绘图功能,包括二维几何图形、曲线、文本、...

    GDI+程序设计(清华大学)

    总之,《GDI+程序设计》是一本内容全面、结构清晰、实用性强的技术图书,是中高级C#程序员学习和应用GDI+技术的优秀参考资料。通过阅读和实践本书中的内容,开发者能够有效提升自己在图形编程领域的专业技能,掌握...

    GDI+图像程序设计(PDF & 源码 -电子工业出版社)

    本书是一本为.NET开发人员讲授如何编写Windows和Web图形应用程序的专著,书中全面介绍了GDI+和Windows图形程序设计的基本知识和GDI+图形程序设计的各个方面。 本书适合于开发GDI+图形应用程序的初、中级程序员...

Global site tag (gtag.js) - Google Analytics