Microsoft KB Archive/810109

= You receive a &quot;System.OutOfMemoryException&quot; error message when you try to use the Bitmap.FromFile method in the .NET Framework 1.0 =

Article ID: 810109

Article Last Modified on 5/9/2007

-

APPLIES TO


 * Microsoft .NET Framework 1.0
 * Microsoft Visual Studio .NET 2002 Professional Edition
 * Microsoft Visual Studio .NET 2002 Enterprise Architect
 * Microsoft Visual Studio .NET 2002 Enterprise Developer
 * Microsoft Visual Studio .NET 2002 Academic Edition

-





SYMPTOMS
When you try to load an image by using the Bitmap.FromFile method in the Microsoft .NET Framework 1.0, you receive the following error message:

An unhandle exception of type 'System.OutOfMemoryException' occurred in system.drawing.dll



CAUSE
This problem may occur when you use the Bitmap.FromFile method and one of the following conditions is true:
 * The image file is corrupted.
 * The image file is incomplete.

Note You may experience this problem if your application is trying to use the Bitmap.FromFile method on a file stream that is not finished writing to a file.
 * The image file does not have a valid image format or GDI+ does not support the pixel format of the file.
 * The program does not have permissions to access the image file.
 * The BackgroundImage propery is set directly from the Bitmap.FromFile method.



WORKAROUND
To work around this problem, use the following guidelines when you load images by using the Bitmap.FromFile method:  Make sure that the image file is not corrupted by opening the image file in another program. Make sure that the image file is complete and that all writing to the image file is completed before you try to load the image file. Make sure that the image file type is a supported image format. For more information about image formats, visit the following Microsoft Developer Network (MSDN) Web site:

http://msdn2.microsoft.com/en-us/library/ms533814.aspx

 Examine the permissions of the image file to make sure that the program can access the image file.  When you set the BackgroundImage property of a form, use the following example code to set the BackgroundImage property: Bitmap bmp=(Bitmap)Image.FromFile(@&quot;Pictures\MyImage.jpg&quot;); this.BackgroundImage=new Bitmap(bmp,bmp.Size); 

Note When you try to load an image from a file, you can catch the exception and then report the error. For example, the following Microsoft Visual Basic .NET code tries to load an image from a file: Try PictureBox1.Image = Bitmap.From(&quot;c:\Badimage.gif&quot;) Catch ex As Exception MessageBox.Show(&quot;Error loading file&quot;,&quot;Error&quot;) End Try

<div class="status_section">

STATUS
This behavior is by design.

<div class="moreinformation_section">

MORE INFORMATION
For more information about the Bitmap class, visit the following MSDN Web site:

http://msdn2.microsoft.com/en-us/library/system.drawing.bitmap(vs.71).aspx

Additional query words: GDIPlus &quot;out of memory&quot;

Keywords: kbgdiplus kbtshoot kbprb KB810109

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.