Quantcast
Channel: Common Language Runtime Internals and Architecture forum
Viewing all articles
Browse latest Browse all 1710

GDI+ error when saving an image

$
0
0

In http://social.msdn.microsoft.com/Forums/vstudio/en-US/b15357f1-ad9d-4c80-9ec1-92c786cca4e6/bitmapsave-a-generic-error-occurred-in-gdi?forum=netfxbcl, someone suggests a workaround through a memory stream to solve 'generic GDI+ error' exceptions when saving an image to a file.

However, I have this problem when saving to a memory stream in the first place.

This code throws a "Generic GDI error" exception on the 2nd save (Image2.save).

In my actual application, the image (after the first save) makes a detour through a database (varbinary(max) column) and back to a memory buffer and an image before the second save is called, with  no difference: the error still occurs.

For backward compatibility to some mighty old machines (stilll running Win2000!) it all has to happen in framework 2.0, but the error occurs on my development machine in 4.0 client profile just as well.

Dim Image1 As Image = Image.FromFile("C:\Users\Public\Pictures\Sample Pictures\Desert.jpg")

Dim Buffer1 As Byte()
Using MemoryStream1 As New IO.MemoryStream
    Image1.Save(MemoryStream1, System.Drawing.Imaging.ImageFormat.Jpeg)
    Buffer1 = MemoryStream1.ToArray
End Using

Dim Image2 As Image
Using MemoryStream2 As New IO.MemoryStream(Buffer1)
    Image2 = Image.FromStream(MemoryStream2)
End Using

Dim Buffer3 As Byte()
Using MemoryStream3 As New IO.MemoryStream
    Image2.Save(MemoryStream3, System.Drawing.Imaging.ImageFormat.Jpeg)
    Buffer3 = MemoryStream3.ToArray
End Using


Viewing all articles
Browse latest Browse all 1710

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>