当我调用Bitmap.Save函数时,出现了“在GDI+中发生了一般性错误”的错误。

3
当我调用 Bitmap.Save 函数时,出现了这个错误:"在 GDI+ 中发生了一般性错误"。当我从本地主机调用它时可以正常工作,但当我从另一台计算机调用它时,就会出现这个错误。 "/jobnumber" 应用程序的服务器错误:

GDI+ 中发生了一般性错误。 描述: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的源的详细信息。

异常详细信息:

System.Runtime.InteropServices.ExternalException: 在 GDI+ 中发生了一般性错误。

源错误:

在执行当前 Web 请求期间生成了一个未经处理的异常。可以使用下面的异常堆栈跟踪信息确定异常的原始位置及其发生的位置。

堆栈跟踪:

[ExternalException (0x80004005): 在 GDI+ 中发生了一般性错误。]
System.Drawing.Image.Save(String filename, ImageCodecInfo encoder, EncoderParameters encoderParams) +377518 System.Drawing.Image.Save(String filename, ImageFormat format) +69
System.Drawing.Image.Save(String filename) +25
Assignment.CreateBitmapImage(String sImageText, Image Image1, JobInfo job_info_param) +124
Assignment.PrintButton_Click(Object sender, EventArgs e) +271
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565


“从另一台计算机调用”是什么意思? - Bobby
1个回答

7

这通常意味着Web用户(例如IIS_USR)没有权限将任何数据保存到您在Web服务器上保存位图的文件夹中。

我以前遇到过类似的问题。检查该文件夹在服务器上的访问权限。首先,给予所有人对该文件夹的完全访问权限(仅为了确保这是问题),然后再缩小范围,使只有所需用户可以访问。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接