HiHo,
mal wieder ne Frage:
Ich öffne hier nen Bild und übergebe es einer PictureBox.
Habe jetzt das Problem, wenn ich das Bild löschen will, dass es wohl in einem anderem Process genutzt wird und daher nicht gelöscht werden kann.
Wenn ich aber das Bild nicht instanziere und in die PictureBox lade, kann ich es aus meiner Anwendung heraus löschen.
So hab jetzt versucht "MyImage.Dispose();" und "picturebox1.Image.Dispose();" zu machen, ich kann es aber immer noch nicht löschen.
Ich nehme an es hängt noch irgendwo im Speicher aber wie kann ich das wieder freigeben damit ich das Bild löschen kann?
Bitmap MyImage = new Bitmap(Image.FromFile(MyPath);
Image.GetThumbnailImageAbort MyCallback = new Image.GetThumbnailImageAbort(ThumbnailCallback);
pictureBox1.Image = MyImage.GetThumbnailImage(Convert.ToInt16(ThumbWidth), Convert.ToInt16(ThumbHeight), MyCallback, System.IntPtr.Zero);
Hallo -acid-,
ist es vielleicht das, was fehlt:
pictureBox1.Image = null;
oder vielleicht
pictureBox1.Invalidate ();
pictureBox1.Update ();
HTH
herbivore
Hi,
ich würd mal
Stream f = File.OpenRead("...");
...Image.GetFromStream(f);
...
f.Close();
probieren.
geht alles nicht. hab alles drin. vielleicht liegt es auch an der instanz?!
da habe ich nur "MyImage.Dispose();"
Hallo -acid-,
bei
Bitmap bitm = new Bitmap (Image.FromFile(MyPath));
bitm.Dispose ();
File.Delete (MyPath);
schlug bei mir das Löschen fehl, wogegen es bei
Image img = Image.FromFile(MyPath);
img.Dispose ();
File.Delete (MyPath);
funktionierte. Im ersten Fall erzeugst du ja ein Image- und ein Bitmap-Objekt und das Image-Objekt bleibt dann wohl trotz bitm.Dispose (); noch bestehen. Wenn du das Bitmap-Objekt trotzdem brauchst, dann müsstest du
Image img = Image.FromFile(MyPath);
Bitmap bitm = new Bitmap (img);
bitm.Dispose ();
img.Dispose ();
File.Delete (MyPath);
verwenden.
HTH
herbivore
PS: Es reicht sogar:
Image img = Image.FromFile(MyPath);
Bitmap bitm = new Bitmap (img);
img.Dispose ();
File.Delete (MyPath);
Hier auch noch ein Danke von mir an herbivore, genau nach der "Dispose()" funktion hab ich auch gesucht!