我正在尝试使用文件上传控件调整用户上传的图像的大小并将其保存在文件夹中。但是在 bmp.save(..) 上,我得到了这个异常。
异常类型:System.Runtime.InteropServices.ExternalException
错误消息:GDI+ 中出现一般错误。
堆栈跟踪:在 System.Drawing.Image.Save(String filename, ImageCodecInfo encoder, EncoderParameters encoderParams) at btnUpload_Click(Object sender, EventArgs e)
这是我的代码
If fileUpload1.HasFile Then
Dim flStream = fileUpload1.FileContent
Dim imgMemStream = New MemoryStream
imgMemStream.SetLength(flStream.Length)
flStream.Read(imgMemStream.GetBuffer, 0, flStream.Length)
imgMemStream.Flush()
flStream.Close()
Dim imgStream = System.Drawing.Image.FromStream(imgMemStream)
Dim bmp = New Bitmap(200, 200)
Dim gr = Graphics.FromImage(bmp)
gr.DrawImage(imgStream, 0, 0, 200, 200)
If System.IO.Directory.Exists(Server.MapPath("ProfilePics\")) Then
bmp.Save(Server.MapPath("ProfilePics\" & employeeId & ".jpg"), Drawing.Imaging.ImageFormat.Jpeg)
Else
Throw New Exception("Path not found")
End If
imgStream.Dispose()
bmp.Dispose()
gr.Dispose()
Response.Redirect(Me.Request.Url.AbsolutePath)
End If
我还尝试让 iis_wpg 完全控制该文件夹。
任何帮助是极大的赞赏。