ファイルを無限に保存できます。ファイルを無限に開くことができます。そして、ファイルを保存して開くことができます。
ただし、ファイルを開いた後、ファイルを保存できません。次のエラーが表示されます。
System.Drawing.dll で、タイプ 'System.Runtime.InteropServices.ExternalException' の初回例外が発生しました
追加情報: GDI+ で一般的なエラーが発生しました。
ビットマップを破棄して一時的にしようとしましたが、うまくいかなかったようです。ファイルを開いて保存している場所も同じなので、ファイルの上書きが原因ではないでしょうか?私のプログラムは常にtemp.saveで壊れます
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
//Graphics.FromImage(bmap).Dispose();
using (Graphics g = Graphics.FromImage(bmap))
{
bmap = new Bitmap(@"C:\Users\Nick\final.bmp");
g.DrawImage(bmap, panel1.Width, panel1.Height);
}
panel1.Invalidate();
}
private void saveToolStripMenuItem_Click(object sender, EventArgs e)
{
Graphics g = Graphics.FromImage(bmap);
temp =new Bitmap(bmap);
//Graphics.FromImage(bmap).Dispose();
try
{
g.Dispose();
temp.Save(@"C:\Users\Nick\final.bmp", ImageFormat.Bmp);
}
catch (UnauthorizedAccessException ex)
{
Console.WriteLine(ex.Message); ;
}
catch (System.Runtime.InteropServices.ExternalException ex)
{
Console.WriteLine(ex.Message);
}
}