本文介绍了在Bitmap.Save&QUOT ASP.NET错误;异常(0X80004005):在GDI +&QUOT发生一般性错误。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个功能,它首先从磁盘中读取图像,调整其大小,然后保存到另一个目录。
当我使用Bitmap.Save(目录+ theimagename)正如我在问题的标题说,它会返回错误。
我检查的目录是正确的,给定的图像名称并不在该目录存在。
是什么奇怪的是,同样的code在本地机器上的伟大工程。但是当我把它上传到我的共享虚拟主机空间,它只是不工作。
在code如下。
bmpOut =新位图(尺寸,大小);
图形G = Graphics.FromImage(bmpOut);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.FillRectangle(Brushes.White,0,0,尺寸,大小);
INT topBottomPadding = 0; INT leftRightPadding = 0;
如果(尺寸和GT; lnNewWidth + 1)
leftRightPadding = Convert.ToInt32((大小 - lnNewWidth)/ 2);
否则,如果(大小和GT; lnNewHeight + 1)
topBottomPadding = Convert.ToInt32((大小 - lnNewHeight)/ 2);
g.DrawImage(loBMP,leftRightPadding,topBottomPadding,lnNewWidth,lnNewHeight);
BMP位图=新位图(bmpOut);
如果(BMP!= NULL)
bmp.Save(ResizedOutput); // C:\\的Inetpub \\虚拟主机\\域名\\的httpdocs \\ ProductImages \\ 500像素\\ gigabyte_ga_ep45_ds4_profilelarge [1] .JPG
bmp.Dispose();
bmpOut.Dispose();
g.Dispose();
loBMP.Dispose();
堆栈跟踪:
[ExternalException(0X80004005):GDI +中发生一般性错误]
System.Drawing.Image.Save(字符串的文件名,图像codecInfo EN codeR,恩coderParameters EN coderParams)377630
System.Drawing.Image.Save(字符串的文件名,格式的imageformat)+69
System.Drawing.Image.Save(字符串文件名)+25
Utilities.ResizeImage(字符串文件名,字符串模式)在C:\\的Inetpub \\虚拟主机\\ batuhanakcay.com \\的httpdocs \\ APP_ code \\ Utilities.cs:181
Link.ToProductImage(字符串文件名),在C:\\的Inetpub \\虚拟主机\\ batuhanakcay.com \\的httpdocs \\ APP_ code \\ Link.cs:79
Product.PopulateControls(产品详细PD)在C:\\的Inetpub \\虚拟主机\\ batuhanakcay.com \\的httpdocs \\ Product.aspx.cs:37
Product.Page_Load(对象发件人,EventArgs e)在C:\\的Inetpub \\虚拟主机\\ batuhanakcay.com \\的httpdocs \\ Product.aspx.cs:20
解决方案
从的
Did you check the permissions?
这篇关于在Bitmap.Save&QUOT ASP.NET错误;异常(0X80004005):在GDI +&QUOT发生一般性错误。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!