Don't just load the image - the documentation does say that the file or stream must be available for the duration of the Image instance.
Instead, load it from the file, create a new image from it, and then dispose the original:
Image im = GetCopyImage(@"D:\Temp\AAAA.jpg");
myPictureBox.Image = im;
private Image GetCopyImage(string path)
using (Image im = Image.FromFile(path))
Bitmap bm = new Bitmap(im);
Where'd code block go to? - OriginalGriff[/edit]