winform(c#)XX正由另一进程使用,因此该进程无法访问此文件.

2024-11-25 13:36:52
推荐回答(3个)
回答1:

 设置picturebox图片的时候像这样  就不会占用文件了。

            FileStream fs = new FileStream("c:\aaa.pic", FileMode.Open);
            byte[] bytes = new byte[fs.Length];
            fs.Read(bytes, 0, bytes.Length);
            fs.Close();
            MemoryStream ms = new MemoryStream(bytes);
            Bitmap img = new Bitmap(ms);
            pictureBox1.Image = img;

回答2:

public Form1()
{
InitializeComponent();
pictureBox1.ImageLocation = @"C:\Users\Administrator\Desktop\截图.png";
}

private void button1_Click(object sender, EventArgs e)
{
pictureBox1.ImageLocation = "";
File.Delete(@"C:\Users\Administrator\Desktop\截图.png");
}
我试过了,这个不报错,你看看是不是其他地方在使用这个文件!

回答3:

我刚刚测试过,占用不是picturebox1.imagelocation="c:\aaa.pic";引起的。

估计你其它地方有bitmap 或者image 加载过这张图片,调用Dispose()方法就行了