.net 是否可能从GDI+;外部例外?
我正在为一个网站开发一个图像上传功能,我正在上传这些图像时对它们进行一些处理,因此我使用了.net 是否可能从GDI+;外部例外?,.net,gdi+,.net,Gdi+,我正在为一个网站开发一个图像上传功能,我正在上传这些图像时对它们进行一些处理,因此我使用了System.Drawing.image和其他相关类 最终,我将位图数据加载到内存流,从中获取我的System.Drawing.Image,然后调用 我发现一些JPEG会抛出一个System.Runtime.InteropServices.ExternalException,并显示一条永远有用的错误消息 GDI+中发生一般性错误 检查文档中的图像。保存它表示当 图像以错误的图像格式保存。 -或- 该图像已保
System.Drawing.image
和其他相关类
最终,我将位图数据加载到内存流
,从中获取我的System.Drawing.Image
,然后调用
我发现一些JPEG会抛出一个System.Runtime.InteropServices.ExternalException
,并显示一条永远有用的错误消息
GDI+中发生一般性错误
检查文档中的图像。保存
它表示当
图像以错误的图像格式保存。-或-
该图像已保存到创建它的源文件中 图像是有效的JPEG;预览、绘制、Paint.NET、Photoshop、Chrome和IE都可以毫无怨言地打开文件。我的代码甚至可以毫无怨言地打开文件 我尝试使用和不使用指定的
ImageFormat
保存文件,但得到了相同的结果
该代码适用于加载其他JPEG文件
是否有方法获取有关引发异常原因的更多信息?
更新 我担心我们可能会偏离主题(主题是,是否可能从GDI+ExternalException中获得有用的错误),因此我不会发布针对我遇到的错误的修复程序,因为最终我不会要求修复该错误
我认为它们对于找到一种从无用的“GDI+中的一般错误”转变为有用的、有意义的错误的方法具有重要价值。不,这是不可能的。如果您在这方面需要帮助,那么您必须发布您的代码。@hanspassant我会这样做,但这并没有真正的帮助。它可以以最基本的方式将字节数组加载到内存流中进行复制。从该流创建图像,然后调用save。我认为它在文件中,但不知道如何发现什么。我希望通过从gdi得到一个更详细的错误,我能够找出问题所在。