При выводе изображения в выходной поток требуется ли временное хранилище? Я получаю "общую ошибку GDI +", которая обычно связана с ошибкой разрешения папки при сохранении изображения в файл.
Единственное, что я делаю с изображением, это добавить текст. Я все еще получаю ошибку, даже когда я выводил изображение без изменений. Например, это приведет к ошибке:
using (Bitmap image = new Bitmap(context.Server.MapPath("images/stars_5.png")))
{
image.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Png);
}
Все работает отлично на моей локальной машине под управлением Windows 7 с IIS 7.5 и ASP.NET 2.0. Проблема возникает на сервере QA, который работает под управлением Windows Server 2003 с IIS 6 и ASP.NET 2.0.
Линия, указывающая на ошибку:
image.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Png);
Здесь трассировка стека:
[ExternalException (0x80004005): A generic error occurred in GDI+.]
System.Drawing.Image.Save(Stream stream, ImageCodecInfo encoder, EncoderParameters encoderParams) +378002
System.Drawing.Image.Save(Stream stream, ImageFormat format) +36
GetRating.ProcessRequest(HttpContext context) in d:\inetpub\wwwroot\SymInfoQA\Apps\tools\Rating\GetRating.ashx:54
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75