Asterix-Ac
Erfahrenes Mitglied
Hi Community,
ich habe da ein kleines Problem.
per OpenFileDialog öffne ich ein Bild und übergebe es einer PictureBox.
Nachdem ich es verändert habe, möchte ich es wieder speichern (mit einem SaveFileDialog).
Wenn ich es nun unter einem neuen Dateinamen speichere, ist alles perfekt.
Aber Wenn ich den gleichen Namen nehme, bekomme ich immer eine Exception (System.Runtime.InteropServices.ExternalException - Zusätzliche Angaben : In GDI+ ist ein allgemeiner Fehler aufgetreten).
Ich habe schon herausgefunden, dass die Datei von einem anderen Prozess verwendet wird. Aber warum? Wird nach 'pictureBox1.Image.FromFile(string FileName)' die Datei nicht mehr geschlossen?
Wie kann man das Problem lösen?
Ich hänge 2 Beispiel-Methoden an, bei denen sich der Fehler ereignet.
Danke schonmal im Vorraus.
Asterix
ich habe da ein kleines Problem.
per OpenFileDialog öffne ich ein Bild und übergebe es einer PictureBox.
Nachdem ich es verändert habe, möchte ich es wieder speichern (mit einem SaveFileDialog).
Wenn ich es nun unter einem neuen Dateinamen speichere, ist alles perfekt.
Aber Wenn ich den gleichen Namen nehme, bekomme ich immer eine Exception (System.Runtime.InteropServices.ExternalException - Zusätzliche Angaben : In GDI+ ist ein allgemeiner Fehler aufgetreten).
Ich habe schon herausgefunden, dass die Datei von einem anderen Prozess verwendet wird. Aber warum? Wird nach 'pictureBox1.Image.FromFile(string FileName)' die Datei nicht mehr geschlossen?
Wie kann man das Problem lösen?
Ich hänge 2 Beispiel-Methoden an, bei denen sich der Fehler ereignet.
Danke schonmal im Vorraus.
Asterix
Code:
private void button1_Click(object sender, System.EventArgs e)
{
if(ofd.ShowDialog() == DialogResult.OK)
{
this.pictureBox1.Image = Image.FromFile(this.ofd.FileName);
}
}
private void button2_Click(object sender, System.EventArgs e)
{
if(sfd.ShowDialog() == DialogResult.OK)
{
this.pictureBox1.Image.Save(this.sfd.FileName);
}
}