A generic error occurred in GDI+

后端 未结 10 599
孤城傲影
孤城傲影 2020-12-17 18:17
[ExternalException (0x80004005): A generic error occurred in GDI+.]
   IpitchitImageHandler.Data.ImageRepository.AddNewTempImage(Stream image, String extension, Guid         


        
相关标签:
10条回答
  • 2020-12-17 18:32

    Make sure IIS_WPG has the correct permissions on your upload folder and also ASPNET.

    I just had the same problem and this fixed it.

    Don't forget to propagate the permissions through your sub folders if required too ( I may have forgotten that.. :) )

    0 讨论(0)
  • 2020-12-17 18:36

    Do not use direct path

        System.Drawing.Image img = Base64ToImage(_ImagePath);
        img.Save(_attachmentPath, ImageFormat.Jpeg);
    

    Use Server.MapPath and it will create Directory If needed

        System.Drawing.Image img = Base64ToImage(_ImagePath);
        img.Save(Server.MapPath(_attachmentPath), ImageFormat.Jpeg);
    
    0 讨论(0)
  • 2020-12-17 18:41

    I've got the same error just now and Google help me to find answer: Loading/Saving bitmap causes the locked file.

    Workaround is create othe bitmap, save and let it release:

    Bitmap tmp = new Bitmap(bitmapToBeSaved); tmp.SaveToFile(fileName);

    0 讨论(0)
  • 2020-12-17 18:43

    I hate that error with a passion. Generic Error is possibly the most useless error description ever written.

    When I've encountered it the problem as always been related to file IO.

    Here is the list of fixes I keep in my notes- Not sure if these apply but they usually do the trick for me.

    • Check File path
      • Make sure that the parent directory exists
      • Ensure that path includes both the filename and extension
      • Use server.MapPath() to create the path
    • Make sure that the file isn't being written back to it's source. Close and reopen the stream if necessary.

    My apologies if i stole this list from somewhere else. It has been in my notebook for awhile and I can't remember where it came from.

    0 讨论(0)
  • 2020-12-17 18:45

    This one followed me for a long time. Yes you can check permissions but what you also should do is to dispose of your bitmap correctly.

    bitmap.Dispose();
    
    0 讨论(0)
  • 2020-12-17 18:46

    I just had an similar problem (same exception) on my hosted website: It turned out to be a permissions issue, the ASP.NET account was trying to read image files from a directory outside its available scope.

    I suggest you double-check the permissions as well as the <trust> element in web.config, it should be set to "Medium" or higher depending on where the files are located.

    0 讨论(0)
提交回复
热议问题